From: Ruby Student Date: 2013-06-16T07:32:32+09:00 Subject: Re: Can I use Sinatra to render dynamic pages? --089e013a28605978cc04df38f0cd Content-Type: text/plain; charset=ISO-8859-7 Content-Transfer-Encoding: quoted-printable Hey Panagiotis, I really truly appreciate your kind words and suggestions. Thank you On Sat, Jun 15, 2013 at 5:24 PM, Panagiotis Atmatzidis wrote: > > On 15 =C9=EF=F5=ED 2013, at 18:46 , Ruby Student = wrote: > > Nick and everyone else, > > Please accept my apologies if I hurt or insulted anyone feeling with my > blatant and clearly lack of knowledge and understanding. Please let me > elaborate: > > I am an AIX system administrator not a programmer, although back on the > '70s I was heavily into assembler programming. I am trying to learn Ruby = as > it appears to me kind of much simpler than other languages such as C, Jav= a, > etc. I like simple and easy tools that can help me do my job more efficie= nt. > > My statement about "overkill" WAS NOT INTENDED TO BE FOR *Sinatra*. If > you go back you'll find that I was talking about *TomCat*. I meant to say > that perhaps *TomCat* was overkill for the simple thing that I wanted to > do. I started playing with *Sinatra* and I to find it simple and very > easy to learn and use. > > As I stated on my original post, I want to create a simple web-based > application, which will be invoked from a browser. > I will read a file every second. The file contains certain information > that changes continuously, 24X7 from January 1 to December 31. This > information collection NEVER stops. > > I have NEVER done anything web related, NEVER. Perhaps, due to my lack of > knowledge, I am not posting my question correctly. > > I want: > > > 1. The user to fire up a browser pointing to my server URL > 2. My application will accept the request and send data to the user's > browser > 3. My application will, every second, read the content of the file and > get the new counters > 4. Display the new information, counter, on the browser WITHOUT THE > USER HAVING TO REFRESH IT. In other words, I want to refresh the brows= er's > content without user having to do anything. The new information must b= e > continuously be updated and displayed. > > As I said earlier, I did this using *Ruby/Shoes*, but this needs to be > used by a number of people and I would have to install Ruby and Shoes eve= ry > desktop that needs to use this Dashboard. > > Someone suggested Javascript but I don't want to start learning yet > another programming tool when I think that Ruby and some web tool such as > Sinatra might be able to help me with this. *Rails* was also suggested. I > am probably still not making any sense! > > I do want to thank you and others for all the answers already posted and > perhaps the ones to come. > > Ruby Student > > > On Fri, Jun 14, 2013 at 9:01 PM, Nicholas Van Weerdenburg < > vanweerd@gmail.com> wrote: > >> Sinatra is as lightweight and simple a framework you can choose for doin= g >> a web app. You can create a complete app in a single file with template >> included! >> >> There is no such thing as Sinatra being overkill for a project. IMHO, th= e >> only simpler alternative is using paper, scissors and glue :) >> >> I love Sinatra and highly recommend it for anyone learning web >> development. Give it a shot- it's a fantastic piece work. >> >> Did you know that there are dozens, if not more, clones of Sinatra acros= s >> different languages? >> >> And the monster framework for the Node.js, Express, is Sinatra inspired? >> >> And as Hassan mentioned, Tomcat is a "servlet" container for Java >> servlets. Not really related, and far, far more complicated than using R= uby >> and Sinatra. I almost had post-traumatic stress syndrome flashbacks seei= ng >> that word- I haven't use Tomcat in over eight years. >> >> Good luck! >> >> Cheers, >> Nick >> >> >> On Fri, Jun 14, 2013 at 9:14 AM, Ruby Student wr= ote: >> >>> Well, I got some good suggestions from everyone here. I thank you all >>> for that! >>> Now I just need to analyze each suggestion and pick he easiest for me. = I >>> am not by any mean a mature ruby programmer and I like to do things as = easy >>> and simple as possible. If Sinatra is overkill for what I want, perhaps= I >>> should look into something different. I was wondering if TomCat might b= e >>> what I need. Anyway, the entire affair is kind of confusing to me as th= is >>> is the first time I deal with this type of thing. >>> >>> As I said, I am very grateful to all of you for taking the time to >>> answer my post. >>> >>> >>> >>> On Thu, Jun 13, 2013 at 11:55 PM, Nicholas Van Weerdenburg < >>> vanweerd@gmail.com> wrote: >>> >>>> You should be able to do this without JavaScript by using streaming. >>>> >>>> Sinatra has a streaming API as of 1.3. Rails 4.0 is adding a "live" >>>> mode for similar. >>>> >>>> However you need to use a supporting web server and hook into the even= t >>>> loop (which Rack exposes). >>>> >>>> https://gist.github.com/rkh/1476463 offers an example, but note that >>>> the heroku app is broken (look at the comments for a link to a patched >>>> version). >>>> >>>> Nick >>>> >>>> >>>> On Thu, Jun 13, 2013 at 5:41 PM, Ruby Student = wrote: >>>> >>>>> Hell Team, >>>>> >>>>> I wrote a very simple dashboard using *shoes* which basically >>>>> displays statistics, every second, of certain type of messages arrivi= ng at >>>>> a queue under *MQ*. But in order for anyone to use it they have to >>>>> install *Ruby*, *shoes *and its requirements. So I started >>>>> experimenting with *Sinatra *to re-write my simple application so >>>>> anyone could point their *browser* and get the dashboard displayed. I >>>>> went over the first *basic Sinatra* tutorial but everything appears >>>>> to be static. Is there any example out there that shows *Sinatra*dyna= mically refreshing the page continuously with new information, in my >>>>> case message queues information? >>>>> >>>>> In other words, once the user successfully get the page displayed, >>>>> from that point on I want the content to be refreshed dynamically wit= h the >>>>> new information without user intervention. >>>>> >>>>> Thank you >>>>> >>>>> -- >>>>> Ruby Student >>>>> >>>> >>>> >>> >>> >>> -- >>> Ruby Student >>> >> >> > > > -- > Ruby Student > > > > Sinatra is *really* simple and you can fire an application in no time. I > wrote a simple display website for a digital signage and the first vesion > was up and running in a about 2 hours and I didn't knew anything about we= b > development either. > > JavaScript is a pain in the ass. HTML is easy to learn but hard to master > and I hate CSS with a passion but by trial-and-error you can come with a > decent theme. I tried to use Coffeescript but I ended up just copying cod= e > snippets and modifying them with only a slight idea of what's going on. N= ot > a good thing. Just learn JavaScript, it's used for about anything and jok= es > apart: Sinatra + (HTML+CSS3+JavaScript) can even get you a job. > > I'm scratching rail's surface right now, till at least, everything seems > really easy because of my little tiny sinatra bg: routers, helpers > (although never used them I know what they are and how they should be > used), viewers, logs and other predefined paths (sinatra is not MVC but > could be if you want to), and so own. With sinatra I used Sequel and > datamapper as ORM. I consider sequel a bit more up2date although DM > received an update about 15 days ago (After 2 years). > > I wrote all just to say that learning Sinatra is easy so don't be afraid. > Learning JavaScript (apparently) is hard but it's worthy. > > Best regards > > > Panagiotis (atmosx) Atmatzidis > > email: atma@convalesco.org > URL: http://www.convalesco.org > GnuPG ID: 0x1A7BFEC5 > gpg --keyserver pgp.mit.edu --recv-keys 1A7BFEC5 > -- > The wise man said: "Never argue with an idiot. They bring you down to > their level and beat you with experience." > > --=20 Ruby Student --089e013a28605978cc04df38f0cd Content-Type: text/html; charset=ISO-8859-7 Content-Transfer-Encoding: quoted-printable
Hey Panagiotis,

I really truly appr= eciate your kind words and suggestions.

Thank you


On Sat, Jun 15, = 2013 at 5:24 PM, Panagiotis Atmatzidis <atma@convalesco.org> wrote:

On 15 =C9=EF=F5=ED 2013, at 18:46 , Ruby Stude= nt <ruby.stu= dent@gmail.com> wrote:

Nick and everyone else,

Please accept my apologies if I hurt= or insulted anyone feeling with my blatant and clearly lack of knowledge a= nd understanding. Please let me elaborate:

I am an AIX system administrator not a programmer, a= lthough back on the '70s I was heavily into assembler programming. I am= trying to learn Ruby as it appears to me kind of much simpler than other l= anguages such as C, Java, etc. I like simple and easy tools that can help m= e do my job more efficient.

My statement about "overkill" WAS NOT INTENDED TO BE FO= R Sinatra. If you go back you'll find that I was talking about <= b>TomCat. I meant to say that perhaps TomCat was overkill for th= e simple thing that I wanted to do. I started playing with Sinatra a= nd I to find it simple and very easy to learn and use.

As I stated on my original post, I want to create a simple web-ba= sed application, which will be invoked from a browser.
I will read= a file every second. The file contains certain information that changes co= ntinuously, 24X7 from January 1 to December 31. This information collection= NEVER stops.

I have NEVER done anything web related, NEVER. Perhaps, due = to my lack of knowledge, I am not posting my question correctly.
<= div>
I want:

  1. The user to fire up a browser poi= nting to my server URL
  2. My application will accept the request and send data to the user's = browser
  3. My application will, every second, read the content of the = file and get the new counters
  4. Display the new information, counter,= on the browser WITHOUT THE USER HAVING TO REFRESH IT. In other words, I wa= nt to refresh the browser's content without user having to do anything.= The new information must be continuously be updated and displayed.
As I said earlier, I did this using Ruby/Shoes= , but this needs to be used by a number of people and I would have to i= nstall Ruby and Shoes every desktop that needs to use this Dashboard.

Someone suggested Javascript but I don't want to start l= earning yet another programming tool when I think that Ruby and some web to= ol such as Sinatra might be able to help me with this. Rails was als= o suggested. I am probably still not making any sense!

I do want to thank you and others for all the answers alread= y posted and perhaps the ones to come.

Ruby St= udent


On Fri, Jun 14, 2013 at 9:01 PM, Nichola= s Van Weerdenburg <vanweerd@gmail.com> wrote:
Sinatra is as lightweight and simple a framework you can c= hoose for doing a web app. =A0You can create a complete app in a single fil= e with template included!

There is no such thing as Sina= tra being overkill for a project. IMHO, the only simpler alternative is usi= ng paper, scissors and glue :)

I love Sinatra and highly recommend it for anyone learn= ing web development. Give it a shot- it's a fantastic piece work.
=

Did you know that there are dozens, if not more, clones= of Sinatra across different languages?

And the monster framework for the Node.js, Express, is = Sinatra inspired?

And as Hassan mentioned, Tomcat = is a "servlet" container for Java servlets. Not really related, a= nd far, far more complicated than using Ruby and Sinatra. I almost had post= -traumatic stress syndrome flashbacks seeing that word- I haven't use T= omcat in over eight years.

Good luck!

Cheers,
N= ick


On Fri, Jun 14, 2013 at 9:14 AM, Ruby Student <<= a href=3D"mailto:ruby.student@gmail.com" target=3D"_blank">ruby.student@gma= il.com> wrote:
Well, I got some = good suggestions from everyone here. I thank you all for that!
Now= I just need to analyze each suggestion and pick he easiest for me. I am no= t by any mean a mature ruby programmer and I like to do things as easy and = simple as possible. If Sinatra is overkill for what I want, perhaps I shoul= d look into something different. I was wondering if TomCat might be what I = need. Anyway, the entire affair is kind of confusing to me as this is the f= irst time I deal with this type of thing.

As I said, I am very grateful to all of you for taking the time t= o answer my post.



On Thu, Jun 13, 2013 at 11:55 PM, Nicholas Van Weerd= enburg <vanweerd@gmail.com> wrote:
You should be able to = do this without JavaScript by using streaming.

Sin= atra has a streaming API as of 1.3. Rails 4.0 is adding a "live" = mode for similar.

However you need to use a supporting web server and hook into th= e event loop (which Rack exposes).

https://gist.github.com/= rkh/1476463 offers an example, but note that the heroku app is broken (= look at the comments for a link to a patched version).

Nick

On Thu, Jun 13, 2013 at 5:41 PM, Ruby Stu= dent <ruby.student@gmail.com> wrote:
Hell T= eam,

I wrote a very simple dashboard using shoes which = basically displays statistics, every second, of certain type of messages ar= riving at a queue under MQ. But in order for anyone to use it they h= ave to install Ruby, shoes and its requirements.= So I started experimenting with Sinatra to re-write my simple appli= cation so anyone could point their browser and get the dashboard dis= played. I went over the first basic Sinatra tutorial but everything = appears to be static. Is there any example out there that shows Sinatra<= /b> dynamically refreshing the page continuously with new information, in m= y case message queues information?

In other words, once the user successfully get the page disp= layed, from that point on I want the content to be refreshed dynamically wi= th the new information without user intervention.

Thank y= ou

--
Ruby Student




--
Ruby= Student




--
Ruby Student

Sinatra is *really* = simple and you can fire an application in no time. I wrote a simple display= website for a digital signage and the first vesion was up and running in a= about 2 hours and I didn't knew anything about web development either.=

JavaScript is a pain in the ass. HTML is easy to learn = but hard to master and I hate CSS with a passion but by trial-and-error you= can come with a decent theme. I tried to use Coffeescript but I ended up j= ust copying code snippets and modifying them with only a slight idea of wha= t's going on. Not a good thing. Just learn JavaScript, it's used fo= r about anything and jokes apart: Sinatra + (HTML+CSS3+JavaScript) can even= get you a job.

I'm scratching rail's surface right now, till a= t least, everything seems really easy because of my little tiny sinatra bg:= routers, helpers (although never used them I know what they are and how th= ey should be used), viewers, logs and other predefined paths (sinatra is no= t MVC but could be if you want to), and so own. With sinatra I used Sequel = and datamapper as ORM. I consider sequel a bit more up2date although DM rec= eived an update about 15 days ago (After 2 years).

I wrote all just to say that learning Sinatra is easy s= o don't be afraid. Learning JavaScript (apparently) is hard but it'= s worthy.

Best regards


Panagiotis (atmosx) Atmatzidis

email: = atma@convalesco.org
URL: http://www.convale= sco.org
GnuPG ID: 0x1A7BFEC5
gpg --keyserver pgp.mit.edu --recv-keys=A01A7BFEC5
--
The wise man = said: "Never argue=A0with an idiot. They bring you down=A0to their lev= el and beat you with=A0experience."




--
Ruby Student --089e013a28605978cc04df38f0cd--