Discussion:
Totally lost in learning Ruby
(too old to reply)
Hilary Bailey
2011-01-21 10:13:47 UTC
Permalink
This is my second attempt to understand Ruby. I completely read 1)
"Beginning Ruby- From Novice to Professional (which to me is a
completely waste of time), 2) The Pragmatic approach to Ruby (which is
incomplete)3)Ruby in 20 minutes, 4)other 15 to 20 minutes cute intro
programs 5) Shoes and now 6)The Book of Ruby by Huw Collingourne, which
seems like a bible without a compiler, which may be totally useless.

Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.

Is there a free compiler and other supporting software that I can use to
make my so far miserable learning Ruby experience worth a while? So far
I am still sold on the idea that Ruby is the programing language to
know, but at this moment I really need HELP.

Tk in advance,

Hilary
--
Posted via http://www.ruby-forum.com/.
Stefano Crocco
2011-01-21 10:39:12 UTC
Permalink
Post by Hilary Bailey
This is my second attempt to understand Ruby. I completely read 1)
"Beginning Ruby- From Novice to Professional (which to me is a
completely waste of time), 2) The Pragmatic approach to Ruby (which is
incomplete)3)Ruby in 20 minutes, 4)other 15 to 20 minutes cute intro
programs 5) Shoes and now 6)The Book of Ruby by Huw Collingourne, which
seems like a bible without a compiler, which may be totally useless.
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
Is there a free compiler and other supporting software that I can use to
make my so far miserable learning Ruby experience worth a while? So far
I am still sold on the idea that Ruby is the programing language to
know, but at this moment I really need HELP.
Tk in advance,
Hilary
First, you don't need a compiler to use ruby. Ruby is an interpreted language,
which means that to execute a program written in ruby, you pass it to the
source file (which is a plain text file) to the ruby interpreter which will
take care of interpreting it and executing it. There's no compilation step
involved in this, which is the reason you found no reference to a compiler.

As for books, you can try with the first edition of Programming Ruby, which is
freely availlable online at http://www.ruby-doc.org/docs/ProgrammingRuby/.
It's written for an old version of ruby, but it still is useful. There are new
editions for new versions of ruby (edition 2 for ruby 1.8 and edition 3 for
ruby 1.9), but you have to buy them.

Regarding supporting software, that depends which operating system you use.

If you're on Windows, then there's the RubyInstaller project
(http://rubyinstaller.org/) which provides the basic tool needed to work with
ruby (I'm not completely sure about what it provides, as I don't use Windows
myself).

If you're on Linux, then ruby is surely included in your distribution.

If you're on another operating system, then I don't know what your options
are, but surely there's someone else who knows.

I hope this helps

Stefano
Shadowfirebird
2011-01-21 11:06:10 UTC
Permalink
I don't mean to sound condescending, but if you've not programmed before, perhaps you are underestimating the problem of jumping two hurdles at once - learning to program, and learning the Ruby language. Programming requires a paradigm-shift which, of course, is difficult to explain to those who have not made it.

It sounds as if you have read a lot of books and got not much from them. Why not try a different approach - try coding some simple programs for yourself. If you are unable to access the Ruby interpreter, there are websites that let you try it online (for example,http://tryruby.org/ ).

Go back to the book that you found least confusing and type out a couple of examples for yourself. Try changing them. Code a simple program from scratch -- say, to ask for a series of numbers at the command prompt and print their sum.

And of course come back here and ask all the basic questions you like. It's the basic questions that are the really deep ones. Good luck.
--
Never go to bed mad. Stay up and fight.
-- Phyllis Diller, "Phyllis Diller's Housekeeping Hints"
Hilary Bailey
2011-01-23 04:48:35 UTC
Permalink
Post by Shadowfirebird
I don't mean to sound condescending, but if you've not programmed
before, perhaps you are underestimating the problem of jumping two
hurdles at once - learning to program, and learning the Ruby language.
Programming requires a paradigm-shift which, of course, is difficult to
explain to those who have not made it.
It sounds as if you have read a lot of books and got not much from them.
Why not try a different approach - try coding some simple programs for
yourself. If you are unable to access the Ruby interpreter, there are
websites that let you try it online (for example,http://tryruby.org/ ).
Go back to the book that you found least confusing and type out a couple
of examples for yourself. Try changing them. Code a simple program
from scratch -- say, to ask for a series of numbers at the command
prompt and print their sum.
And of course come back here and ask all the basic questions you like.
It's the basic questions that are the really deep ones. Good luck.
Shadowfirebird,
Thank you for the advice.
--
Posted via http://www.ruby-forum.com/.
Phillip Gawlowski
2011-01-21 12:09:14 UTC
Permalink
Post by Hilary Bailey
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
Well, one hurdle at a time. First you need to learn to program, and
then you should tackle Ruby.

Fortunately, we can kill two birds with one stone:
http://pine.fm/LearnToProgram/

This will teach you how to program, and does it using Ruby. :)

The next step would be reading up about databases, and GUI frameworks.
Either something like the wxWidget toolkit, which allows you to write
software that runs on a computer, or a web framework, like Rails, or
Sinatra (from your problem description, I'd go with a web framework,
if the database isn't intended for just one school).

However, you won't go fast, unless you can dedicate a good amount of
time to the task. If you spend an hour or two each day to learn
programming and then the technologies you might need, let's call it a
month or two until you can tackle your original problem.
Post by Hilary Bailey
Is there a free compiler and other supporting software that I can use to
make my so far miserable learning Ruby experience worth a while?  So far
I am still sold on the idea that Ruby is the programing language to
know, but at this moment I really need HELP.
Well, as others have pointed out: Ruby is not a compiled language.
You'll need a text editor and/or an integrated development environment
to write Ruby programs (also called "scripts" from time to time).

Suggestions as to what to use as an editor/IDE depend highly on your
OS (Notepad is fine, but it lacks a couple of features that make life
easier). A few suggestions:
I like Notepad++ for "quick and dirty" jobs, it's free and available
for Windows.
My preferred Ruby IDE is Netbeans, which is also free, and runs on
Java, so is available for all the major OSs.

And, once you are stuck, or have questions about Ruby/programming,
feel free to send another message to this forum. :)
--
Phillip Gawlowski

Though the folk I have met,
(Ah, how soon!) they forget
When I've moved on to some other place,
There may be one or two,
When I've played and passed through,
Who'll remember my song or my face.
Michael Brooks
2011-01-22 03:40:21 UTC
Permalink
Post by Hilary Bailey
This is my second attempt to understand Ruby. I completely read 1)
"Beginning Ruby- From Novice to Professional (which to me is a
completely waste of time), 2) The Pragmatic approach to Ruby (which is
incomplete)3)Ruby in 20 minutes, 4)other 15 to 20 minutes cute intro
programs 5) Shoes and now 6)The Book of Ruby by Huw Collingourne, which
seems like a bible without a compiler, which may be totally useless.
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
Is there a free compiler and other supporting software that I can use to
make my so far miserable learning Ruby experience worth a while? So far
I am still sold on the idea that Ruby is the programing language to
know, but at this moment I really need HELP.
Tk in advance,
Hilary
Hello Hilary:

In addition to the suggestions provided by others you may also want to look
at this http://www.troubleshooters.com/codecorn/ruby/basictutorial.htm to
learn the Ruby language. It uses Linux so the way it describes running Ruby
programs won't work for Windows and some of the examples given are a little
strange (e.g. the use of three ellipses for loops, which is often more
confusing than using Ruby's two ellipse format, and the use of the "length"
method like "for ss in 0...presidents.length" in loops which could just be
replaced by "for ss in presidents"). These (and tons of other resource
you'll find by typing "ruby tutorial" into Google) are also useful
http://www.fincher.org/tips/Languages/Ruby/ ,
http://www.digitalmediaminute.com/article/3398/ruby-programming-tutorial .

I find Ruby a very easy (and enjoyable) language to learn (like Basic was
many years ago) but it's a big step between knowing a language and knowing
how to design and build a database applications. If your goal is to build
a database application to share with a number of people spread over a large
geographical areas then you'll eventually need to learn something about
database design, decide what database you want to use, and decide if you
want to create a desktop application (using something like wxRuby which is
wxWidgets for Ruby) or a web application (using something like Ruby on
Rails, also called RoR or Rails) .

Desktop applications tend to be easier to write but harder to distribute and
fix because you'll need to copy them (or any fixes) to each computer that
needs them. Web applications tend to be harder to write because you'll
need more infrastructure (computers and software) and understanding of
programming specialties (i.e. security, multi-user environment design, web
architecture) but are easier to distribute and fix because you'll only need
to provide folks with the location (i.e. a web address), user id and
password of your web application and can fix things in one spot, locally on
your web server.

If your target ends up being a Windows desktop application, I find it easier
to build desktop applications in tools like Embarcadero Delphi or Microsoft
Visual Studio .NET and often suggest that clients with little programming
experience use something like Microsoft Access because these tools have
integrated development-environments, database builders, GUI builders and
deployment tools that make things easier out-of-the-box. I suggest this
because even though Ruby is a very nice languages (my favourite actually),
the language is a small part of the overall picture when building a complex
application. Unfortunately, Ruby is usually my last choice for desktop
projects because of the complexities of pulling together and predictably
deploying all the pieces (i.e. database drivers, GUI, libraries). Ruby also
presents challenges for speed, protection of intellectual property and data
privacy. I recommend you dig deeper on these topics and decide for
yourself. I just wanted to warn you before you got too deep then frustrated
and blamed Ruby for your pain when the pain is probably related to many
other things. If your target ends up being a web application then Ruby on
Rails is a good choice (even through, for similar reasons, I've found
Embarcadero Delphi Intraweb better for the web applications I've needed to
build).

If you decide to use Ruby to develop your database application you should
consider purchasing a robust code editor like JetBrains RubyMine
(http://www.jetbrains.com/ruby/ ) which can help you be more productive
(especailly for coding error identifcation and debugging) when writing
either Ruby or Ruby on Rails applications.

I learned Ruby with the book "Programming Ruby" and Ruby-on-Rails with the
book "Agile Web Development with Rails". Both are authored by Dave Thomas
and published by The Programmatic Programmers.

Michael
Michael Brooks
2011-01-22 15:40:22 UTC
Permalink
Post by Michael Brooks
I learned Ruby with the book "Programming Ruby" and Ruby-on-Rails with the
book "Agile Web Development with Rails". Both are authored by Dave Thomas
and published by The Programmatic Programmers.
Michael
Oops... I meant to say "The Pragmatic Programmers" at the end of that last
sentences. Darn spell checking out-smarted me. Their stuff is available
here http://pragprog.com/ .

Michael
Victor Blaga
2011-01-22 15:49:10 UTC
Permalink
If you have a little .NET experience you could try using IronRuby. It could
combine the familiarity of .NET way of building applications (especially
Windows Forms) with the Ruby language specifics. You are familiar with Java
you could try JRuby and build a Swing application using Ruby.
Jose Hales-Garcia
2011-01-22 16:39:07 UTC
Permalink
Post by Hilary Bailey
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
A district-wide database and interface is not a trivial project. Coding
it from scratch is a challenge for a seasoned developer in any language.

Why do want to do it in Ruby and why are you doing it from scratch?

Jose
.......................................................
Jose Hales-Garcia
UCLA Department of Statistics
--
Posted via http://www.ruby-forum.com/.
Stu
2011-01-22 22:51:46 UTC
Permalink
Post by Hilary Bailey
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
A district-wide database and interface is not a trivial project.  Coding
it from scratch is a challenge for a seasoned developer in any language.
Why do want to do it in Ruby and why are you doing it from scratch?
Jose
.......................................................
Jose Hales-Garcia
UCLA Department of Statistics
--
Posted via http://www.ruby-forum.com/.
Actually why is this being done in-house as opposed to outsourcing it
from a professional is a better question.
Sergio Fernandes
2011-01-23 03:15:44 UTC
Permalink
I recommnd learn for the beginning and study every sintax before another,
and pratice. :D good luck!
Post by Stu
Post by Jose Hales-Garcia
Post by Hilary Bailey
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
A district-wide database and interface is not a trivial project. Coding
it from scratch is a challenge for a seasoned developer in any language.
Why do want to do it in Ruby and why are you doing it from scratch?
Jose
.......................................................
Jose Hales-Garcia
UCLA Department of Statistics
--
Posted via http://www.ruby-forum.com/.
Actually why is this being done in-house as opposed to outsourcing it
from a professional is a better question.
Hilary Bailey
2011-01-23 04:44:56 UTC
Permalink
Post by Stefano Crocco
Post by Hilary Bailey
teachers which will hold educational institutions accountable for the
Tk in advance,
Hilary
First, you don't need a compiler to use ruby. Ruby is an interpreted
language,
which means that to execute a program written in ruby, you pass it to
the
source file (which is a plain text file) to the ruby interpreter which
will
take care of interpreting it and executing it. There's no compilation
step
involved in this, which is the reason you found no reference to a
compiler.
As for books, you can try with the first edition of Programming Ruby,
which is
freely availlable online at
http://www.ruby-doc.org/docs/ProgrammingRuby/.
It's written for an old version of ruby, but it still is useful. There
are new
editions for new versions of ruby (edition 2 for ruby 1.8 and edition 3
for
ruby 1.9), but you have to buy them.
Regarding supporting software, that depends which operating system you
use.
If you're on Windows, then there's the RubyInstaller project
(http://rubyinstaller.org/) which provides the basic tool needed to work
with
ruby (I'm not completely sure about what it provides, as I don't use
Windows
myself).
If you're on Linux, then ruby is surely included in your distribution.
If you're on another operating system, then I don't know what your
options
are, but surely there's someone else who knows.
I hope this helps
Stefano
Hi Stefano,
Thanks for such speedy response. The Rubi community is really
impressive. I was under the impression that after having some programing
language skilss and with some training I would be able to put together a
# of applications and build a program computer program. I thought that
just like how individuals could use some of Apple's apps, put them
together then build a game, I believed that eventually this could be
done with Ruby and its supportive/compatible applications.

Now facing this reality, would it help if I used Linux instead of
Windows 7?
--
Posted via http://www.ruby-forum.com/.
David Masover
2011-01-23 05:31:39 UTC
Permalink
Post by Hilary Bailey
I was under the impression that after having some programing
language skilss and with some training I would be able to put together a
# of applications and build a program computer program. I thought that
just like how individuals could use some of Apple's apps, put them
together then build a game, I believed that eventually this could be
done with Ruby and its supportive/compatible applications.
I'm not sure quite what you mean here.

If you mean create a brand-new app from scratch using something like Apple's
Xcode tools, and then having a standalone app (without forcing people to
install Ruby), there are options for that. I haven't ever had to do this, but
the project that looks the coolest for this purpose is Rawr
(http://rawr.rubyforge.org/).

If you mean take several existing apps and mash them together into a new app,
that really depends which apps you're talking about. It could be a five minute
job of writing the appropriate glue code, essentially snapping stuff together
like legos, or it could be a truly impossible task, like trying to attach an
aircraft carrier to a 747 and make a useful vehicle out of it when you don't
have access to the blueprints of either.

For what you described:

"I am a school teacher trying to create an education database software for
administrators and teachers which will hold educational institutions
accountable for the performance of their school district."

I'm guessing you mean the former -- you're wanting to build something from
scratch, and you were just wanting to know how to actually get an app out of
it, right?

I'd also imagine that this sort of thing would make more sense as a web app.
The advantages of that approach would be that you don't have to create an
installer and make sure it installs and runs properly on every single person's
computer, you just need to make sure they have a decent web browser.
Basically, you'd get to install whatever OS and software you want on whatever
server(s) it runs on, and to everyone else, it's just a website.

The main disadvantage is that it would be a _lot_ more of a learning curve --
you'd want to know at least HTML and CSS, if not also HTTP (easy) and
JavaScript, in addition to Ruby.
Post by Hilary Bailey
Now facing this reality, would it help if I used Linux instead of
Windows 7?
Maybe.

Ruby definitely seems designed to run on a Unix of some sort, so if you want
to make the Ruby part easy on yourself, some sort of Linux would help. So
would BSD, OS X, even Solaris.

But learning an entirely new OS at the same time as you learn to program
sounds like a daunting task.
Hilary Bailey
2011-01-23 14:07:57 UTC
Permalink
Post by David Masover
Post by Hilary Bailey
I was under the impression that after having some programing
language skilss and with some training I would be able to put together a
# of applications and build a program computer program. I thought that
just like how individuals could use some of Apple's apps, put them
together then build a game, I believed that eventually this could be
done with Ruby and its supportive/compatible applications.
I'm not sure quite what you mean here.
If you mean create a brand-new app from scratch using something like Apple's
Xcode tools, and then having a standalone app (without forcing people to
install Ruby), there are options for that. I haven't ever had to do this, but
the project that looks the coolest for this purpose is Rawr
(http://rawr.rubyforge.org/).
If you mean take several existing apps and mash them together into a new app,
that really depends which apps you're talking about. It could be a five minute
job of writing the appropriate glue code, essentially snapping stuff together
like legos, or it could be a truly impossible task, like trying to attach an
aircraft carrier to a 747 and make a useful vehicle out of it when you don't
have access to the blueprints of either.
"I am a school teacher trying to create an education database software for
administrators and teachers which will hold educational institutions
accountable for the performance of their school district."
I'm guessing you mean the former -- you're wanting to build something from
scratch, and you were just wanting to know how to actually get an app out of
it, right?
I'd also imagine that this sort of thing would make more sense as a web app.
The advantages of that approach would be that you don't have to create an
installer and make sure it installs and runs properly on every single person's
computer, you just need to make sure they have a decent web browser.
Basically, you'd get to install whatever OS and software you want on whatever
server(s) it runs on, and to everyone else, it's just a website.
The main disadvantage is that it would be a _lot_ more of a learning curve --
you'd want to know at least HTML and CSS, if not also HTTP (easy) and
JavaScript, in addition to Ruby.
Post by Hilary Bailey
Now facing this reality, would it help if I used Linux instead of
Windows 7?
Maybe.
Ruby definitely seems designed to run on a Unix of some sort, so if you want
to make the Ruby part easy on yourself, some sort of Linux would help. So
would BSD, OS X, even Solaris.
But learning an entirely new OS at the same time as you learn to program
sounds like a daunting task.
Hi David,
Thanks a $llion for responding. Based on your response, where do I
start? Is there a specific HTML guide?. What is CSS and which one or
version should I use? And I guess the same applies to HTTP and
JavaScript. To a novice like me,I am still trying to piece together an
approach to learning how to program using and becoming a part of the
Open Source community. The difficulty is that the kind individuals like
yourself, who have answered my call for help have been tossing at me so
many programs that end-up adding to the problem. Therefore I am going to
take all the suggestions, place them in a learning sequential pattern
and ask you again for your advice. At this moment the web option seems
to be the closest answer to what I have been searching for. Getting
there is the problem. I am willing to spends the grueling time learning
it.
--
Posted via http://www.ruby-forum.com/.
Phillip Gawlowski
2011-01-23 16:24:37 UTC
Permalink
Post by Hilary Bailey
Thanks a $llion for responding. Based on your response, where do I
start? Is there a specific HTML guide?. What is CSS and which one or
version should I use? And I guess the same applies to HTTP and
JavaScript.
There's dozens of HTML, CSS, and JavaScript guides out there, but a
good starting point to learn HTML, CSS and JavaScript is
w3schools.com.

Keep in mind, that those three are different, but related, technologies:
- HTML describes a site.
- CSS makes a site pretty.
- JavaScript manipulates a site.

As for versions of those: Take a look at w3schools.com. What you can
learn there will be supported by pretty much any recent browser (HTML
5 and CSS 3.0 aren't wildly deployed yet, and still in flux, though
the current generation of browsers is getting better at them: IE9,
Firefox 4, Chrome dev-channel).

You don't really need to learn HTTP (fortunately): If you decide on a
web-based solution, your webserver will take care of that. At most,
deal with error codes, of which you need to know 3:
404: Site not found.
500: Internal Server Error (a catch all, meaning that something in
your webserver went wrong).
200: The client request could be processed.

Those 3 are important to troubleshoot an application.

Also: Web servers, database servers, HTTP stuff etc. is more the
domain of a system administrator.
Post by Hilary Bailey
To a novice like me,I am still trying to piece together an
approach to learning how to program using and becoming a part of the
Open Source community. The difficulty is that the kind individuals like
yourself, who have answered my call for help have been tossing at me so
many programs that end-up adding to the problem. Therefore I am going to
take all the suggestions, place them in a learning sequential pattern
and ask you again for your advice.
Well, you need two tools to develop Ruby applications: A texteditor,
and Ruby itself. Everything else is gravy. ;)

For web stuff, it helps to have a number of browsers installed, to see
if your markup code and JavaScript work as you think they should.
However, if you can find a web designer, they'll happily do that for
you, or grab a template for HTML and CSS off of a website, like
oswd.org or opensourcetemplates.org .


Of course, you'll want to look out for libraries that do what you want
to do, without you having to deal with the problem yourself, since
that means you can focus on your own application, rather than having
to deal with Yet Another Problem (we usually call that "yak shaving":
it's something you have to do, but isn't really getting you towards
solving the problem).

That can be database wrappers (means to interface with a database, and
doing so in a Ruby-ish syntax), or Markdown to format text without
having to deal with the gritty HTML, and so on.

Searching the web for "<my problem> Ruby library" usually helps, as
does taking a look at http://ruby-toolbox.com/
Post by Hilary Bailey
At this moment the web option seems
to be the closest answer to what I have been searching for. Getting
there is the problem. I am willing to spends the grueling time learning
it.
A good choice for that is, probably, Rails. You can easily install
Ruby and Rails with the RailsInstaller (railsinstaller.org), which
bundles all you need in one package, and you don't really need a web
server, or anything else to run a Rails app in development mode (which
is the default).

Rails has the other benefit that there are a lot of tutorials and
howtos to be found, and the Rails community one forum over can be
helpful, too.

Another very good resource is http://railscasts.com/, and I've heard
only good things about PeepCode.com's webcasts (which are pay for, but
everybody is raving about them).

While all of this seems like a lot, you can divide this with ease into
several steps:
- Learn Ruby and Rails (or another web framework, like Sinatra)
- Pick up the necessities of HTML, CSS, and JavaScript
- Learn about application security (this is very, very important on
the internet!)
- Learn about deployment options for Rails (or the web framework you chose)
--
Phillip Gawlowski

Though the folk I have met,
(Ah, how soon!) they forget
When I've moved on to some other place,
There may be one or two,
When I've played and passed through,
Who'll remember my song or my face.
David Masover
2011-01-23 19:49:04 UTC
Permalink
Post by Phillip Gawlowski
Post by Hilary Bailey
Thanks a $llion for responding. Based on your response, where do I
start? Is there a specific HTML guide?. What is CSS and which one or
version should I use? And I guess the same applies to HTTP and
JavaScript.
There's dozens of HTML, CSS, and JavaScript guides out there, but a
good starting point to learn HTML, CSS and JavaScript is
w3schools.com.
Probably a good starting point.

Later on, though... For CSS, I seem to always end up on A List Apart when I
have a particularly hard problem. For JavaScript, you'd eventually want to
read Douglas Crockford's stuff:

http://javascript.crockford.com/

I agree that w3schools is a good place to start, though.
Post by Phillip Gawlowski
- CSS makes a site pretty.
More specifically, it makes a site look the way you want it to.
Post by Phillip Gawlowski
You don't really need to learn HTTP (fortunately): If you decide on a
web-based solution, your webserver will take care of that. At most,
404: Site not found.
500: Internal Server Error (a catch all, meaning that something in
your webserver went wrong).
200: The client request could be processed.
Those 3 are important to troubleshoot an application.
I think the main concepts here are what HTTP is, what a status code is, what
HTTP headers are, and what an HTTP method is:

http://tomayko.com/writings/rest-to-my-wife

Once you have that, the details of how these things are actually implemented
may not matter much -- I have only rarely felt the need to speak HTTP directly
-- but it's good to at least have some idea of what it is:

http://www.joelonsoftware.com/articles/LeakyAbstractions.html
Post by Phillip Gawlowski
Also: Web servers, database servers, HTTP stuff etc. is more the
domain of a system administrator.
Probably. Hopefully. It may even be completely eliminated, depending on what
you deploy to:

http://appengine.google.com/
http://code.google.com/p/appengine-jruby/

Or of course, when you're just starting out developing Rails, the default
setup will give you a little SQLite database, and you can get by while knowing
very little.

But, for example, I never felt I really needed to know how to set up a
database server, but ORMs are the leakiest of abstractions. If I was building
something on top of a SQL database, I needed to know at least enough about SQL
to have an intuition of which operations will be fast and which will be slow,
how I should store my data based on what I need to do with it, and
occasionally there's no getting around writing a manual SQL query to optimize
something.
Post by Phillip Gawlowski
Well, you need two tools to develop Ruby applications: A texteditor,
and Ruby itself. Everything else is gravy. ;)
I'd also cite Rubygems as a necessity, but yes, that's about it.
Post by Phillip Gawlowski
For web stuff, it helps to have a number of browsers installed, to see
if your markup code and JavaScript work as you think they should.
In particular, probably Google Chrome or Firefox with Firebug, at least. The
ability to right-click and "inspect element" is _very_ helpful for figuring
out what's actually going on with a page.
Post by Phillip Gawlowski
However, if you can find a web designer, they'll happily do that for
you, or grab a template for HTML and CSS off of a website, like
oswd.org or opensourcetemplates.org .
In my experience, web _designers_ have been terrible with JavaScript and only
tolerable with HTML and CSS.
Post by Phillip Gawlowski
Searching the web for "<my problem> Ruby library" usually helps, as
does taking a look at http://ruby-toolbox.com/
I also find a search on rubygems.org helps a lot.
Post by Phillip Gawlowski
While all of this seems like a lot, you can divide this with ease into
- Learn Ruby and Rails (or another web framework, like Sinatra)
Learn Ruby first.

I would also argue that some amount of HTML and CSS should come before Rails,
for more or less the same reason that Ruby should come through Rails. I don't
agree with everything Joel says, but this part is important:

"The law of leaky abstractions means that whenever somebody comes up with a
wizzy new code-generation tool that is supposed to make us all ever-so-
efficient, you hear a lot of people saying "learn how to do it manually first,
then use the wizzy tool to save time." Code generation tools which pretend to
abstract out something, like all abstractions, leak, and the only way to deal
with the leaks competently is to learn about how the abstractions work and
what they are abstracting. So the abstractions save us time working, but they
don't save us time learning."

Especially that last part. Rails saves you time working, but I don't think it
should be used to save you time learning. Otherwise, when stuff breaks (and it
will), you'll have a _much_ harder time figuring out what's actually going on.
Josh Cheek
2011-01-23 14:39:41 UTC
Permalink
Post by Hilary Bailey
Now facing this reality, would it help if I used Linux instead of
Windows 7?
I think you should not do this. It is tempting to think "if only I did this,
or had that, everything would be so much easier". This is why I own so many
books :P

Linux is a whole topic of its own. I suppose there might be some rewards to
using it, but certainly not enough to warrant switching, for someone in your
situation. IMO, Linux suffers serious usability issues, which is why I use a
Mac. I expect switching would just be a hindrance.

Windows will be fine, if your gems are just not working (make sure you have
the devkit), or you have to really beat your head against the wall to get
things to install and play nicely, then maybe you will have a reason to
switch, but I never had any issues like that when I used Windows, and there
are a number of people really putting a lot of work in to make the Windows
environment nice to use Ruby with.

So far, it sounds like your issue is that you are not getting the
information out of the books that they were hoping you would get out of
them. That is not an environment problem, so I think you should stick with
Windows.

I think the problem is the way you are trying to get information out of the
books you have / the way the books are guiding you to get information out.
The Revolutionist's Handbook has a maxim that I have found to be true in my
own life: "Activity is the only road to knowledge". When you go to learn
from these books, do you sit down and read them, try to piece the
information into some sort of cohesive bit of information, and then move on
to the next thing? Or do you read them, sit down and try to use them in a
program, see if they work the way they are described, see how you can take
them and combine them in a new way to do something interesting to you? I
suspect you have written extremely few programs by your confusion about the
compiler. That is not a problem in itself, but it will prevent you from
learning. I believe to "get it", you must ground the theory in some sort of
application that you comprehend on a more fundamental level. And playing
with the material out of your own creativity, writing your own code,
fabricating your own solution out of the building blocks the books give you,
I think, is the best way to translate the theory of Ruby programming into
something you internally understand.

I hope you don't find that to be offensive, I am just trying to express the
realization I've had to face in my own life, that there are good and bad
ways of learning. When you are using the good ways, you will amaze yourself
by how much you can pick up so quickly, and when you are using the bad ways,
you will make almost no progress, and be very frustrated by how even things
you know are simple turn out to be complicated.

Descriptions, written in English, are just abstractions for the actual,
concrete behaviour of the thing. They have their place, and can be a
wonderful way to communicate, but you must first understand how the
abstraction maps to the reality. You first have to have the foundations of a
mental model to map the new knowledge to. And that, I think, comes from
doing and playing.
Hilary Bailey
2011-01-23 04:45:43 UTC
Permalink
Hi Stefano,
Thanks for such speedy response. The Rubi community is really
impressive. I was under the impression that after having some programing
language skilss and with some training I would be able to put together a
# of applications and build a program computer program. I thought that
just like how individuals could use some of Apple's apps, put them
together then build a game, I believed that eventually this could be
done with Ruby and its supportive/compatible applications.

Now facing this reality, would it help if I used Linux instead of
Windows 7?
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-01-23 04:49:33 UTC
Permalink
Shadowfirebird,
Thank you for the advice.
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-01-23 14:08:44 UTC
Permalink
Hi David,
Thanks a $llion for responding. Based on your response, where do I
start? Is there a specific HTML guide?. What is CSS and which one or
version should I use? And I guess the same applies to HTTP and
JavaScript. To a novice like me,I am still trying to piece together an
approach to learning how to program using and becoming a part of the
Open Source community. The difficulty is that the kind individuals like
yourself, who have answered my call for help have been tossing at me so
many programs that end-up adding to the problem. Therefore I am going to
take all the suggestions, place them in a learning sequential pattern
and ask you again for your advice. At this moment the web option seems
to be the closest answer to what I have been searching for. Getting
there is the problem. I am willing to spends the grueling time learning
it.
--
Posted via http://www.ruby-forum.com/.
Mike Stephens
2011-01-23 19:41:36 UTC
Permalink
Post by Hilary Bailey
This is my second attempt to understand Ruby.
What happened the first time - did you give up or try something else?
Post by Hilary Bailey
My only programming experience is
the confusion I had trying to read and comprehend the above sources
Have you never used another programming system? Why did you choose Ruby?

Is this application for you, a closed group of users or do you want to
market it?
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-01-23 20:05:50 UTC
Permalink
Hi Mike,
The first time I completed the book, then got stuck trying to understand
what, where and how to use some of the recommended programs, such as
YMAL, SQL etc. For example, beside practicing and following all he
written guide, there was no reference as to how to start assembling a
database.

In terms of why Ruby? I put sent out an email SOS to the Open Source
community, and it was unanimous that Ruby is the way to go. What do you
suggest.

In terms of usability. I eventually hope to market it with the intention
of providing for non-for-profit causes, such as a)micro-financing Third
World nations b) provide measurable answers to the improvement of US\any
secondary educational facilities. My experience has shown where private
consultants have been raping scarce financial resources from budgets,
and their decision have kept adding to, in my case(USA),low performance,
thus educational frustration.

So if you next question is why not pay someone to develop such a
program, the answer is: I don't have the money, and secondly, in the
past some of my trusted colleagues with vast programming knowledge have
been a disappointment.

Therefore i figured that my best route would be to ask the Open Source
community for help.
--
Posted via http://www.ruby-forum.com/.
Stu
2011-01-23 22:08:07 UTC
Permalink
Google search how to "think like a computer scientist".

I don't think the ruby version of the book is done so you may be stuck
with picking the java or python version of the book. actually there
might be a c version as well.

Read the whole thing. And do all the exercises. It's pedagogical.

Take it upon yourself to the challenge of creating a bubble sort
algorithm... on paper =)

Look at common data structures and get to know them. Take the time to
know what object oriented programming paradigm shift in contrast to
procedural programming languages. Take the time to understand the flow
of data and memory work with computers and operating system.

Note that low level as well as high level programming is slow process
of learning and practice before your hit the level of "The Art of
Programming".

As for using ruby in it's native environment I also suggest that you
run FreeBSD UNIX or some variant of GNU/Linux but mind you that will
add to your learning curve as well. It is estimated a two year
learning curve for running and maintaining either one of those
operating systems. I imagine that statistic is now lowered on the
maintainability end now that we have over simplified tools in places.

Good luck to you and your project.

~
Post by Hilary Bailey
Hi Mike,
The first time I completed the book, then got stuck trying to understand
what, where and how to use some of the recommended programs, such as
YMAL, SQL etc. For example, beside practicing and following all he
written guide, there was no reference as to how to start assembling a
database.
In terms of why Ruby? I put sent out an email SOS to the Open Source
community, and it was unanimous that Ruby is the way to go.  What do you
suggest.
In terms of usability. I eventually hope to market it with the intention
of providing for non-for-profit causes, such as a)micro-financing Third
World nations b) provide measurable answers to the improvement of US\any
secondary educational facilities. My experience has shown where private
consultants have been raping scarce financial resources from budgets,
and their decision have kept adding to, in my case(USA),low performance,
thus educational frustration.
So if you next question is why not pay someone to develop such a
program, the answer is: I don't have the money, and secondly, in the
past some of my trusted colleagues with vast programming knowledge have
been a disappointment.
Therefore i figured that my best route would be to ask the Open Source
community for help.
--
Posted via http://www.ruby-forum.com/.
tim o
2011-01-23 22:12:23 UTC
Permalink
hi all
one point is being made here that open source means no owners
no-one really helps this person they all just chat and remark

there are no active groups or even updates
and no videos to learn from
the ruby wiki-books that is five years out of date
Ruby is struggling to keep afloat on its past fling
it was popular before jquery. extjs and perl on parrot vm
Ruby releases do not release an update for the old version
since you have to delete your old version
it means an ruby is always an 80 mb download
and then gems means redundancy
not many people use the new version
there are several ruby versions all limping along still in use from years ago
as they don't auto-update like addons in firefox
it seems inept to re-install a whole new ruby
just to get about 5 mb changes in a few ruby patches
interest appears to dwindle as there is no ready basic support
can anyone help this teacher with data bases there or just talk for days?
why are many of the programs in ruby forge five years old and forgotten?
is ragel a good thing? Ruby is cool but is a great mess frankly.
is there support for data stores such as puppet?
Date: Mon, 24 Jan 2011 05:05:50 +0900
Subject: Re: Totally lost in learning Ruby
Hi Mike,
The first time I completed the book, then got stuck trying to understand
what, where and how to use some of the recommended programs, such as
YMAL, SQL etc. For example, beside practicing and following all he
written guide, there was no reference as to how to start assembling a
database.
In terms of why Ruby? I put sent out an email SOS to the Open Source
community, and it was unanimous that Ruby is the way to go. What do you
suggest.
In terms of usability. I eventually hope to market it with the intention
of providing for non-for-profit causes, such as a)micro-financing Third
World nations b) provide measurable answers to the improvement of US\any
secondary educational facilities. My experience has shown where private
consultants have been raping scarce financial resources from budgets,
and their decision have kept adding to, in my case(USA),low performance,
thus educational frustration.
So if you next question is why not pay someone to develop such a
program, the answer is: I don't have the money, and secondly, in the
past some of my trusted colleagues with vast programming knowledge have
been a disappointment.
Therefore i figured that my best route would be to ask the Open Source
community for help.
--
Posted via http://www.ruby-forum.com/.
Shadowfirebird
2011-01-24 09:07:40 UTC
Permalink
Post by tim o
one point is being made here that open source means no owners
no-one really helps this person they all just chat and remark
there are no active groups or even updates
and no videos to learn from
the ruby wiki-books that is five years out of date
Ruby is struggling to keep afloat on its past fling [...]
Goodness. If you feel like that what on earth are you doing on this list?

The OP has thanked at least two posters here, so I for one assume that we have said something at least marginally useful.

As for Ruby being "out of date" -- what does that mean, exactly? Even if it were true in some sense, Google the amount of Cobol still being developed - being "out of date" is out of date...

----
"It's not just a computer -- it's your ass."
-- Cal Keegan
Mike Stephens
2011-01-24 11:23:28 UTC
Permalink
Post by tim o
Post by tim o
no-one really helps this person they all just chat and remark
can anyone help this teacher with data bases there or just talk for days?
Hilary has not asked any specific questions yet.

On forums like this you can't expect people to design a database schema
for an unspecified education application. You can't answer questions
like 'is there a compiler that matches the contents of a book?'

You have to ask very specific questions that don't take the reader long
to understand.

It's true that people on here are more interested in rather
sophisticated language issues but even so, for general questions, I
think this forum gives responses at least as considered as others I have
seen.
--
Posted via http://www.ruby-forum.com/.
Robert Klemme
2011-01-24 12:00:02 UTC
Permalink
Post by Mike Stephens
Post by tim o
Post by tim o
no-one really helps this person they all just chat and remark
can anyone help this teacher with data bases there or just talk for days?
Hilary has not asked any specific questions yet.
On forums like this you can't expect people to design a database schema
for an unspecified education application. You can't answer questions
like 'is there a compiler that matches the contents of a book?'
You have to ask very specific questions that don't take the reader long
to understand.
It's not only a question of how long it takes a reader to understand
the question but also how long the answer is going to be (how much
explanation and guidance is needed to answer a question). For someone
starting out without or with only few programming experience creating
a web application which is backed by a relational database amounts to
a herculean task. To climb that mountain there is a lot of learning
needed and a technical forum like this is certainly not the best
suited medium to provide this guidance. At least, so I'm guessing, it
will take considerably longer than meeting a mentor personally.
Post by Mike Stephens
It's true that people on here are more interested in rather
sophisticated language issues but even so, for general questions, I
think this forum gives responses at least as considered as others I have
seen.
+1

Kind regards

robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
flebber
2011-02-03 10:55:24 UTC
Permalink
Post by Hilary Bailey
Hi Mike,
The first time I completed the book, then got stuck trying to understand
what, where and how to use some of the recommended programs, such as
YMAL, SQL etc. For example, beside practicing and following all he
written guide, there was no reference as to how to start assembling a
database.
In terms of why Ruby? I put sent out an email SOS to the Open Source
community, and it was unanimous that Ruby is the way to go.  What do you
suggest.
In terms of usability. I eventually hope to market it with the intention
of providing for non-for-profit causes, such as a)micro-financing Third
World nations b) provide measurable answers to the improvement of US\any
secondary educational facilities. My experience has shown where private
consultants have been raping scarce financial resources from budgets,
and their decision have kept adding to, in my case(USA),low performance,
thus educational frustration.
So if you next question is why not pay someone to develop such a
program, the answer is: I don't have the money, and secondly, in the
past some of my trusted colleagues with vast programming knowledge have
been a disappointment.
Therefore i figured that my best route would be to ask the Open Source
community for help.
--
Posted viahttp://www.ruby-forum.com/.
I admire your vim and vigor, I really do if you wish to learn Ruby
read from the horses mouth. I tried a few books and found Matz's the
most logical http://oreilly.com/catalog/9780596516178 . It seems you
are not only trying to learn Ruby but the whole world of IT in one
gulp, your question what is CSS highlights that, but I do not say this
to criticize because if you put your mind to it you can do it.

Look at this walkthrough http://www.artfulsoftware.com/dbdesignbasics.html
on designing databases, there is an example within using schools as an
example. If you want opensource have you considered using base and
mysql. You could likely achieve your requirement in less time and take
your knowledged gained onto developing your application further as you
learn.

What is base http://www.libreoffice.org/features/base/ or
http://www.openoffice.org/product/base.html . I gave you links to both
as currently they are very similar and I didn't want to enter this
debate as I have no personal ideological preference as he technology
currently remains the same.
Mike Stephens
2011-01-23 21:56:39 UTC
Permalink
Hilary

Best of luck. If you haven't programmed in anything else then I guess
Ruby is a perfectly reasonable choice.

I am building sites probably much of the same size as your target. I
have a team of six seasoned web developers, an agency that produces
styling, a DBA, UI designers, all sorts of infrastructure people who
build the environments, and others. It still takes many, many months to
produce a site. If it seems like a mountain to climb, that's because it
is.
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-02-02 16:27:58 UTC
Permalink
Is a Code editor the same as a text editor? Can they both be used for
Ruby as well as RubyNRails?. If this is so are: a) Notepad++,
b)Netbeans, and c)Ruby mine-code similar products that can be used for
Ruby as well as Ruby N Rails?
--
Posted via http://www.ruby-forum.com/.
Robert Klemme
2011-02-02 16:50:31 UTC
Permalink
Post by Hilary Bailey
Is a Code editor the same as a text editor?
Yes and no. Both can be used to edit source code but an editor or IDE
with support for a particular language (and framework like Rails) can
make the work significantly easier and faster => more productive.
Post by Hilary Bailey
Can they both be used for
Ruby as well as RubyNRails?. If this is so are: a) Notepad++,
b)Netbeans, and c)Ruby mine-code similar products that can be used for
Ruby as well as Ruby N Rails?
In principle probably all of them can be used since they are all text
editors. Which of these is more productive for Ruby and Rails work I
cannot tell. Since you are starting and probably writing small
programs initially any of them should do. Actually an IDE with all
the whistles and bells can make it overly hard initially since it is
more difficult to learn.

Kind regards

robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
DaShiell, Jude T. CIV NAVAIR 1490, 1, 26
2011-02-02 17:39:59 UTC
Permalink
Code editors and text editors differ. Code editors depending on code to be edited have additional capabilities like block indenting and outlining capability among others. Netbeans isn't an editor it's an ide integrated development environment and that's a different kettle of fish altogether. It is possible to use notepad to write code though and a person new to a programming language will learn syntax faster and better that way. When a person gets to the point where they're asked to do production assignments rather than development assignments, then it's time to research and select either a code editor; an integrated development environment or both and learn those before going on into the production assignments.

-----Original Message-----
From: Hilary Bailey [mailto:***@gmail.com]
Sent: Wednesday, February 02, 2011 11:28
To: ruby-talk ML
Subject: Re: Totally lost in learning Ruby

Is a Code editor the same as a text editor? Can they both be used for
Ruby as well as RubyNRails?. If this is so are: a) Notepad++,
b)Netbeans, and c)Ruby mine-code similar products that can be used for
Ruby as well as Ruby N Rails?

--
Posted via http://www.ruby-foru
Hilary Bailey
2011-02-02 18:30:13 UTC
Permalink
Based on the responses received I am leaned toward the following study
guide:

A) since I intend to use the internet as the major source of
communication, learning ruby through Rails may be my starting point. I
installed Ruby 1.8.7, Rails 3.0.3, with Sqlite3 (1.3.3 x86 -mingw32)

A1) Download Devkit for use as a Ruby source of reference

A2) use the Ruby Gem web asa source of Ruby support

B) before delving into Ruby or Rails, I will learn critical basics from
w3.schools.com, from which I will cover: HTML, CSS and JavaScript

C) purchase Ruby mine-code editor from http://www.jetbrains.com/ruby,
using their 30 day free trial prom, to use while finally learning Ruby
through Rails

C1) get started to learn Ruby/Rails. By first taking a 15 minute
tour/intro from http://tryruby.org

C2) continue quest by
submerging into Rails through www.digitalmediaminute.com tutorials.

C3) start placing my then practiced scripts + other saved practiced
tools, into a database of choice so to start dev a project

D) hopefully at this point I will be able to clarify in my mind which
database source to use, what supporting instruments needed to be
attached, etc.. to make a meaningful log-in program that will reflect
real time, with the ability to gather, configure and interpret data.

If my analysis seems naïve, please understand, and I think you do, my
enthusiasm for using the open Source community as a savior to my woes.

What do you think? I know that I have over simplified the whole nature
of programming, however at this stage I think I will be forgiven for
bypassing some unmentioned stage/application/procedure.
--
Posted via http://www.ruby-forum.com/.
Sam Duncan
2011-02-02 18:48:25 UTC
Permalink
Hi Hilary,
I haven't been following the thread, but I wonder why you would buy
an IDE? There are lots of really good free ones, and arguably using a
language/ toolkit agnostic one is better for your health. Also, any
reason you are going with Ruby 1.8.x vs Ruby 1.9.x - I don't know a lot
about rails, but if you are coming to the language cold, you probably
don't want to learn old idioms, only to have to unlearn them again later?

Sam
Post by Hilary Bailey
Based on the responses received I am leaned toward the following study
A) since I intend to use the internet as the major source of
communication, learning ruby through Rails may be my starting point. I
installed Ruby 1.8.7, Rails 3.0.3, with Sqlite3 (1.3.3 x86 -mingw32)
A1) Download Devkit for use as a Ruby source of reference
A2) use the Ruby Gem web asa source of Ruby support
B) before delving into Ruby or Rails, I will learn critical basics from
w3.schools.com, from which I will cover: HTML, CSS and JavaScript
C) purchase Ruby mine-code editor from http://www.jetbrains.com/ruby,
using their 30 day free trial prom, to use while finally learning Ruby
through Rails
C1) get started to learn Ruby/Rails. By first taking a 15 minute
tour/intro from http://tryruby.org
C2) continue quest by
submerging into Rails through www.digitalmediaminute.com tutorials.
C3) start placing my then practiced scripts + other saved practiced
tools, into a database of choice so to start dev a project
D) hopefully at this point I will be able to clarify in my mind which
database source to use, what supporting instruments needed to be
attached, etc.. to make a meaningful log-in program that will reflect
real time, with the ability to gather, configure and interpret data.
If my analysis seems naïve, please understand, and I think you do, my
enthusiasm for using the open Source community as a savior to my woes.
What do you think? I know that I have over simplified the whole nature
of programming, however at this stage I think I will be forgiven for
bypassing some unmentioned stage/application/procedure.
Stu
2011-02-02 21:14:35 UTC
Permalink
I agree with Sam here Hilary.

There have been many holy wars on the internet since the beginning of
time on which text editor to use to write programs and scripts. (see:
https://secure.wikimedia.org/wikipedia/en/wiki/Editor_war)

My suggestion is to take a day( or two) and learn vim, a clone of vi.
It is a fairly simple to learn editor which provides syntax
highlighting and completion for ruby as well as many plugins to aid
development for ruby on rails and give the editor ide-like
capabilities.

Historically vi was the first visual text editor and was written as an
alternative to 'ed' the UNIX line editor. vi in some form or another
is found on every unix and linux system. This is one reason you might
find it a preference for admins and programmers. You can get vim for
windows here: http://www.vim.org/

You can run the command 'vimtutor' which is packaged with it and run
though the tutorial.

vi(m) is a pretty venerable tool. Learning anything with it will stick
with you for the rest of your life with no cost outside of simply
learning it. If you really feel money should be exchanged the initial
author of the clone has charity he prefers:
http://www.vim.org/sponsor/

But as with anything and everything in the open source and free
software universe; take the time to learn the tools so you can be
productive with them when the time comes.

Once again good luck with your future programming and hacking.

~
Post by Sam Duncan
Hi Hilary,
   I haven't been following the thread, but I wonder why you would buy an
IDE? There are lots of really good free ones, and arguably using a language/
toolkit agnostic one is better for your health. Also, any reason you are
going with Ruby 1.8.x vs Ruby 1.9.x - I don't know a lot about rails, but if
you are coming to the language cold, you probably don't want to learn old
idioms, only to have to unlearn them again later?
Sam
Post by Hilary Bailey
Based on the responses received I am leaned toward the following study
A) since I intend to use the internet as the major source of
communication, learning ruby through Rails may be my starting point. I
installed Ruby 1.8.7, Rails 3.0.3, with Sqlite3 (1.3.3 x86 -mingw32)
A1) Download Devkit for use as a Ruby source of reference
A2) use the Ruby Gem web asa source of Ruby support
B) before delving into Ruby or Rails, I will learn critical basics from
w3.schools.com, from which I will cover: HTML, CSS and JavaScript
C) purchase Ruby mine-code editor from http://www.jetbrains.com/ruby,
using their 30 day free trial prom, to use while finally learning Ruby
through Rails
C1) get started to learn Ruby/Rails. By first taking a 15 minute
tour/intro from http://tryruby.org
C2) continue quest by
submerging into Rails through www.digitalmediaminute.com tutorials.
C3) start placing my then practiced scripts + other saved practiced
tools, into a database of choice so to start dev a project
D) hopefully at this point I will be able to clarify in my mind which
database source to use, what supporting instruments needed to be
attached, etc.. to make a meaningful log-in program that will reflect
real time, with the ability to gather, configure and interpret data.
If my analysis seems naïve, please understand, and I think you do, my
enthusiasm for using the open Source community as a savior to my woes.
What do you think? I know that I have over simplified the whole nature
of programming, however at this stage I think I will be forgiven for
bypassing some unmentioned stage/application/procedure.
Fabio Cevasco
2011-02-02 21:39:40 UTC
Permalink
+1 for Vim

I've been using Vim for years and I never looked back. To be honest, others may say the same for Emacs, I think.

Bottom line is: no need of buying an editor or IDE when there are already free editors that are so close to perfection :-)

Fabio Cevasco
========================
web: http://www.h3rald.com
twitter: http://twitter.com/h3rald
Post by Stu
I agree with Sam here Hilary.
There have been many holy wars on the internet since the beginning of
https://secure.wikimedia.org/wikipedia/en/wiki/Editor_war)
My suggestion is to take a day( or two) and learn vim, a clone of vi.
It is a fairly simple to learn editor which provides syntax
highlighting and completion for ruby as well as many plugins to aid
development for ruby on rails and give the editor ide-like
capabilities.
Historically vi was the first visual text editor and was written as an
alternative to 'ed' the UNIX line editor. vi in some form or another
is found on every unix and linux system. This is one reason you might
find it a preference for admins and programmers. You can get vim for
windows here: http://www.vim.org/
You can run the command 'vimtutor' which is packaged with it and run
though the tutorial.
vi(m) is a pretty venerable tool. Learning anything with it will stick
with you for the rest of your life with no cost outside of simply
learning it. If you really feel money should be exchanged the initial
http://www.vim.org/sponsor/
But as with anything and everything in the open source and free
software universe; take the time to learn the tools so you can be
productive with them when the time comes.
Once again good luck with your future programming and hacking.
~
Post by Sam Duncan
Hi Hilary,
I haven't been following the thread, but I wonder why you would buy an
IDE? There are lots of really good free ones, and arguably using a language/
toolkit agnostic one is better for your health. Also, any reason you are
going with Ruby 1.8.x vs Ruby 1.9.x - I don't know a lot about rails, but if
you are coming to the language cold, you probably don't want to learn old
idioms, only to have to unlearn them again later?
Sam
Post by Hilary Bailey
Based on the responses received I am leaned toward the following study
A) since I intend to use the internet as the major source of
communication, learning ruby through Rails may be my starting point. I
installed Ruby 1.8.7, Rails 3.0.3, with Sqlite3 (1.3.3 x86 -mingw32)
A1) Download Devkit for use as a Ruby source of reference
A2) use the Ruby Gem web asa source of Ruby support
B) before delving into Ruby or Rails, I will learn critical basics from
w3.schools.com, from which I will cover: HTML, CSS and JavaScript
C) purchase Ruby mine-code editor from http://www.jetbrains.com/ruby,
using their 30 day free trial prom, to use while finally learning Ruby
through Rails
C1) get started to learn Ruby/Rails. By first taking a 15 minute
tour/intro from http://tryruby.org
C2) continue quest by
submerging into Rails through www.digitalmediaminute.com tutorials.
C3) start placing my then practiced scripts + other saved practiced
tools, into a database of choice so to start dev a project
D) hopefully at this point I will be able to clarify in my mind which
database source to use, what supporting instruments needed to be
attached, etc.. to make a meaningful log-in program that will reflect
real time, with the ability to gather, configure and interpret data.
If my analysis seems naïve, please understand, and I think you do, my
enthusiasm for using the open Source community as a savior to my woes.
What do you think? I know that I have over simplified the whole nature
of programming, however at this stage I think I will be forgiven for
bypassing some unmentioned stage/application/procedure.
Jeremy Bopp
2011-02-02 21:48:55 UTC
Permalink
Post by Stu
My suggestion is to take a day( or two) and learn vim, a clone of vi.
It is a fairly simple to learn editor which provides syntax
highlighting and completion for ruby as well as many plugins to aid
development for ruby on rails and give the editor ide-like
capabilities.
I use vim every day for editing all manner of files on various
platforms. I like it so much that I really hate other text editors and
anything without vim key bindings. That said, I would never claim that
vim and vi are simple to learn by any stretch of the imagination.
They're great tools, but they operate so differently from other editors
that the learning curve is steep (almost vertical for many people ;-).

Aside from that, yes, vim has tons of plugins available to provide all
manner of functionality on top of a rich built-in set of features. And
you can rest assured that either vim or vi are available for immediate
use on just about any Unix-like system you'll ever encounter.

I would recommend that you give vim (or even better, gvim) a try, but
don't spend too much time banging your head against it. Try something
else if vim frustrates you too much for now. You're here to learn Ruby
after all, and it would be a shame for you to be chased off by an
editor. :-)

-Jeremy
Sherm Pendley
2011-02-02 19:40:33 UTC
Permalink
Post by Hilary Bailey
B) before delving into Ruby or Rails, I will learn critical basics from
w3.schools.com, from which I will cover: HTML, CSS and JavaScript
Ugh. W3Schools is a *very* poor reputation among pros who actually know
how to code. It's riddled with errors & misinformation - one glaring
example of which is the name itself, since they have no relationship to
the W3C whatsoever.

Check out <http://htmldog.com>. The material there is far better.

sherm--
--
Sherm Pendley
<http://camelbones.sourceforge.net>
Cocoa Developer
Mike Stephens
2011-02-02 22:23:47 UTC
Permalink
Post by Hilary Bailey
Post by Hilary Bailey
A) since I intend to use the internet as the major source of
communication, learning ruby through Rails may be my starting point.
Rails is a powerful package but I would think twice about getting
involved in it right now.

Ruby can be accessible but equally it can be very inscrutable to all but
very knowledgable and capable programmers eg most of the people on this
channel.

The problem with Rails is it is a whole new langusge to learn. It is
more like a DSL. If you are struggling with just Ruby, why climb another
mountain at the same time?

Start dabbling with Scite. Open IRB in another window, and a command
prompt for ri in a third window. Explore Ruby's basic behaviours. Follow
a simple Ruby book. Ask a few questions and get comfortable with simple
things.

Yukihiro Matsumoto is said to have designed Ruby based on the Principle
of Least Surprise. When you read that, just remember he wrote the
language so it's not exactly surprising that he doesn't get surprised
about what he created.

I programmed in a number of older languages. You could pick them up in a
few weeks and have real applictions running in no time. Then with great
excitement I crossed over to Ruby-like languages with Visual C++. It was
a different world - an order of magnitude more baffling.

It's fascinating to write a few lines of Ruby and load data into and out
of a database, script a web site or make the numbers on Excel move
magically of their own accord.

Building a credible web application is a whole different ball game.
--
Posted via http://www.ruby-forum.com/.
Josh Cheek
2011-02-03 00:32:42 UTC
Permalink
Post by Mike Stephens
The problem with Rails is it is a whole new langusge to learn. It is
more like a DSL. If you are struggling with just Ruby, why climb another
mountain at the same time?
Start dabbling with Scite. Open IRB in another window, and a command
prompt for ri in a third window. Explore Ruby's basic behaviours. Follow
a simple Ruby book. Ask a few questions and get comfortable with simple
things.
+1 Use vim is another mountain to climb on top of learning to program. Go
with Scite (or if on a mac, TextMate) which will behave like all the other
applications you are familliar with (ie the left arrow to go left, rather
than the letter j -- whilst in command mode) There used to be a version
packaged with the Ruby download, that was setup such that you could run the
program you were writing by pressing f5.

Tackle the editor after you have done enough programming to decide that it
is worth learning the editor as well.
Hilary Bailey
2011-02-02 22:13:36 UTC
Permalink
Here is my confusion....take the simplistic case of using an Excel
spreadsheet. I will be abel to type, perform math task etc...if I wish
to save a document can be accessed from the File-Open menu, then what
was saved can nbe executed by playing with some commands. With
Ruby/Rails, would the IDE be the source where I would enter scripts?. If
this is so, how would I retrieve/execute/display the saved macro/script.
Is Vim the tool that will do all of this using Ruby/Rails?
--
Posted via http://www.ruby-forum.com/.
Stu
2011-02-02 23:02:56 UTC
Permalink
vi follows more command line logic like: {command} {file}

so to create hello world in ruby you would open up a prompt (i'm
assuming this works in dos) and run:

% vim hello.rb

if no dos prompt is available to edit a file you simple press colon
and 'e' then tab will show your file list. if you need a new file
colon and 'n' and type name of the file (:n hello.rb)

As I mentioned there is a tutorial bundled with the editor. The
learning curve comes from what you may have become accustomed( or
conditioned) to with gui based editors. What harm is it to run through
the tutorial?

It was mentioned about gvim which may have "drop down menus" though
this is really a scaffold when you are new and should be considered
something to avoid unless you have to use it.

The reason to learn an editor such as vi is that you will discover
that you will be come more productive with it over time. It does not
expire or lose support for xyz language as well as I mentioned it on
just about every unix installation currently available. At one of your
peers machines or need to remote into some host? vi is there. no need
to carry your own editor with you.

Also note vi is not hard to learn. It's just different than what your
accustomed to. In most cases it should take a couple minutes to learn
something, some hours of practice and reconditioning the muscle
memory, to gain a skill you can use for the rest of your life.
Post by Hilary Bailey
Here is my confusion....take the simplistic case of using an Excel
spreadsheet. I will be abel to type, perform math task etc...if I wish
to save a document can be accessed from the File-Open menu, then what
was saved can nbe executed by playing with some commands. With
Ruby/Rails, would the IDE be the source where I would enter scripts?. If
this is so, how would I retrieve/execute/display the saved macro/script.
Is Vim the tool that will do all of this using Ruby/Rails?
--
Posted via http://www.ruby-forum.com/.
DaShiell, Jude T. CIV NAVAIR 1490, 1, 26
2011-02-03 12:24:58 UTC
Permalink
Once you write a script and want to test it, you run the irb program and type irb scriptname<enter> and if you've put the script in the directory where irb expects it it's possible you run your script. The irb command is only one way to do this but useful for beginners.


-----Original Message-----
From: Hilary Bailey [mailto:***@gmail.com]
Sent: Wednesday, February 02, 2011 17:14
To: ruby-talk ML
Subject: Re: Totally lost in learning Ruby

Here is my confusion....take the simplistic case of using an Excel
spreadsheet. I will be abel to type, perform math task etc...if I wish
to save a document can be accessed from the File-Open menu, then what
was saved can nbe executed by playing with some commands. With
Ruby/Rails, would the IDE be the source where I would enter scripts?. If
this is so, how would I retrieve/execute/display the saved macro/script.
Is Vim the tool that will do all of this using Ruby/Rails?

--
Posted
Nicholas A.
2011-02-04 14:19:24 UTC
Permalink
Hilary,

When you first begin to learn about programming, your first obstacles
will have to do with basic language syntax, understanding how/when/why
to use variables, loops, conditional expressions, data structures, etc.
In the beginning, those basic building blocks may seem curious and
disjunct, but but you will use them constantly and directly every single
time you sit down to write any real code. As you get started, even
basics such as knowing how/why to indent lines of code can give you
trouble. Becoming familiar with the process of installing and working
in your development environment (your choice of OS, Ruby installation,
IDE/text/code editor, etc.), and executing and debugging snippets of
code, can take a while to become comfortable.

After you become familiar with the basic language concepts, tool set,
and work flow of writing/executing simple bits of code, you'll become
more able to use libraries and frameworks that do valuable things:
create GUI windows and widgets that obtain and display processed data
for the user, create web interfaces that obtain and display processed
data, work with graphics, media, compressed files, and other binary data
types, save/retrieve/manipulate text data in useful real-world ways,
manage larger data structures, perhaps control robots, or anything else
you want to accomplish... You'll settle on favorite
libraries/frameworks and become proficient at making them work together
to create full applications that do useful things for users. Along the
way, you'll learn to think more about designing sensible and efficient
user interfaces, you'll learn to handle usage problems that come from
how different people expect to use computer programs, you'll learn to
catch typical bugs that occur in text data processing, anticipate and
eliminate potential security weaknesses, deal with usability issues in
multiuser applications, etc. It can take years and many tens/hundreds
of thousands of lines of written code to really become proficient at
writing rock solid pieces of software that people use easily and
intuitively.

The problem with most tutorials and books for beginners is that they end
with the basics of language structure and bits about using
libraries/frameworks, etc. Once you understand enough basic syntax and
concepts like using loops to search and sort through lists of data, you
need to see and play with lots of code to actual working applications.
You need to see, experiment with, alter and write from scratch lots and
lots of working code. To get started with that, you could try, for
example, downloading wxRuby and playing with all the included code
examples. Take the GUI grid widget example and _alter_ the code to make
it display a sample data file that you've read from a file on the hard
drive. Put together a simple application that reads a directory of
image files, displays the file names in a text list, and then displays
the image when the file name is clicked. Write a small recipe database
application. Write a clone of a classic simple video game. Find a web
host that supports Ruby and learn how to enter data via HTML forms,
process that data with CGI, and display tables of the processed data
using HTML. Enter your sample data file into a MySQL database and write
the SQL code needed to search and sort that data by any field in the
database. When you get stuck, post a question online, with the code
you're trying to make work. You're likely to get detailed help when you
have specific questions about how to fix a small portion of
almost-working code.

I wrote a tutorial for the REBOL language which takes you through all
the stages of learning, including line by line documented code and full
case studies for more than 50 applications: http://re-bol.com. It's
been among the top 3 search results for "computer programming tutorial"
for several years. I'm currently rewriting that tutorial for Ruby, but
in the meantime, it should give you a nice complete understanding about
how to progress beyond just the basics. All the concepts will be
directly applicable to learning Ruby.

Hope that helps :)
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-02-08 02:16:13 UTC
Permalink
Hi everybody,
Based on the responses I have been receiving, I will greatly appreciate
any comment on how to move forward from this point. Thanks in advance to
all respondents whom have been soooooo kind and patient.

What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed through/by Microsoft Solver
software.

The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.

As you can tell, there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..

Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?

Therefore, I figured that, doing it all by myself may be the best
solution. However, some of my concerns are: "Why reinvent the wheel?',
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?

Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
--
Posted via http://www.ruby-forum.com/.
Robert Klemme
2011-02-08 07:54:05 UTC
Permalink
Post by Hilary Bailey
What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed  through/by Microsoft Solver
software.
Microsoft Access gives you a database with application code in a
single file. You can even have a GUI to enter data. This is very
convenient for small applications. However, it's best when used by a
single person at a time - it's concurrency facilities are somewhat
limited - at least that's what it was last time I checked. It would
seem that you could cook something similar with Open Office (or Libre
Office) Base which has the advantage not to be tied into Microsoft
OS's. If you need something that can be used by multiple users
concurrently chances are that Access is not the best choice.
Post by Hilary Bailey
The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.
What exactly does "real time" mean in your context? I figure, human
beings need to give this system some input data before it can spit out
any new information.
Post by Hilary Bailey
As you can tell,  there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..
What does "system" exactly mean here? Is it a mathematical model that
you want to implement in software? Is it a software system that you
need to improve / extend?
Post by Hilary Bailey
Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?
Therefore, I figured that, doing it all by myself may be the best
solution.  However, some of my concerns are: "Why reinvent the wheel?',
Good question. It's usually a bad idea.
Post by Hilary Bailey
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?
Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
Clarify your requirements *first*. Write down a list of things that
your system needs to do, e.g. things like "someone in every school in
the district needs to be able to enter course grades" or "I want to be
notified immediately if some metric X changes". Then we can start
about thinking how such a solution might look like and finally we can
help you develop a curriculum for your training so you can build what
you want. I do assume though that it will take you in the order of
months to arrive there if you do not have an IT background.

Kind regards

robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
Shadowfirebird
2011-02-08 09:25:50 UTC
Permalink
Post by Robert Klemme
Clarify your requirements *first*. Write down a list of things that
your system needs to do, e.g. things like "someone in every school in
the district needs to be able to enter course grades" or "I want to be
notified immediately if some metric X changes". Then we can start
about thinking how such a solution might look like and finally we can
help you develop a curriculum for your training so you can build what
you want. I do assume though that it will take you in the order of
months to arrive there if you do not have an IT background.
I second that. Work out exactly what you want the product to do. Then work out the smallest set of functionality that would make the product at all meaningful: cross off all the bells and whistles, then look at what's left and pick out the most important part; then cross off everything else. That's the bit you want to make first.

Three reasons for not making it all at once: first, you want to get to a point where you can test what you have done as fast as possible; second, you get something that you can show others, which might be important.

Third and most importantly, it's an unpleasant fact that you will almost certainly get to the testing stage and realise that with what you know now, you would have done many things differently. You may have to start over. I would say, don't try and learn how to make the product at the same time as making it. But there is no point in that - the truth is you will learn as much in making your first attempt as you do beforehand.

Personally, I'd start by designing the database, but others will tell you to design the interaction with the users first. I'm not sure there is one correct way; do what feels right.
Hilary Bailey
2011-02-08 16:11:50 UTC
Permalink
Post by Robert Klemme
Post by Hilary Bailey
What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed through/by Microsoft Solver
software.
Microsoft Access gives you a database with application code in a
single file. You can even have a GUI to enter data. This is very
convenient for small applications. However, it's best when used by a
single person at a time - it's concurrency facilities are somewhat
limited - at least that's what it was last time I checked. It would
seem that you could cook something similar with Open Office (or Libre
Office) Base which has the advantage not to be tied into Microsoft
OS's. If you need something that can be used by multiple users
concurrently chances are that Access is not the best choice.
Post by Hilary Bailey
The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.
What exactly does "real time" mean in your context? I figure, human
beings need to give this system some input data before it can spit out
any new information.
Post by Hilary Bailey
As you can tell, there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..
What does "system" exactly mean here? Is it a mathematical model that
you want to implement in software? Is it a software system that you
need to improve / extend?
Post by Hilary Bailey
Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?
Therefore, I figured that, doing it all by myself may be the best
solution. However, some of my concerns are: "Why reinvent the wheel?',
Good question. It's usually a bad idea.
Post by Hilary Bailey
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?
Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
Clarify your requirements *first*. Write down a list of things that
your system needs to do, e.g. things like "someone in every school in
the district needs to be able to enter course grades" or "I want to be
notified immediately if some metric X changes". Then we can start
about thinking how such a solution might look like and finally we can
help you develop a curriculum for your training so you can build what
you want. I do assume though that it will take you in the order of
months to arrive there if you do not have an IT background.
Kind regards
robert
What I want to create is a product that is computer accessible, that is
similar to a teacher's Grade Keeper, but goes farther by adding defined
info from principals, guidance counselors, lunch provision for students,
etc.. The reason for this approach is that this will now allow more
complete view of a what impacts a child.

Therefore, the daily entry of data from all participants (teachers,
principals, security, janitors, etc...) will give an analyzer a wider
set of defined parameter inputed data to access, then analyze. The
problem is where to start. I read a book on Ruby, some say that my next
step is to play with scripts, alter some commands and then test such
adjustments. The problems is to follow a logical sequence of learning.
For example, since i use Windows 7, have installed Ruby 1.9.2 p.136 and
Rails, Vim7.2, and LibreOffice 3.3. and saved info to htmldog.com from
which HTML & CSS can be learned.

I know very well that it will take me some time, however, now where do I
start? Should I star with htmldog tutorials, then open Rails along with
vim7.2, then the next stage will be to explore SQlite, then MYSQL, while
having LibreOffice Base as a source of reference?

In terms of distribution, giving it away free will not be taken
seriously by current educational administrators and policy makers. It
suits me to market it and if successful, support this community plus
other social causes of choice.

So based on all that have been said, where, specifically (if possible)
go from here in creating such a product.
--
Posted via http://www.ruby-forum.com/.
Abhijit
2011-02-08 18:50:42 UTC
Permalink
You could try RubyMine from JetBrains. They are offering personal license
for RubyMine for just 29$. A editor plugin which provides VIM emulation is
available in RubyMine plugin repository.



Thanks,
Abhijit


--
There are only 10 types of people in the world, those who understand binary
and those who don't.
Post by Hilary Bailey
Post by Robert Klemme
Post by Hilary Bailey
What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed through/by Microsoft Solver
software.
Microsoft Access gives you a database with application code in a
single file. You can even have a GUI to enter data. This is very
convenient for small applications. However, it's best when used by a
single person at a time - it's concurrency facilities are somewhat
limited - at least that's what it was last time I checked. It would
seem that you could cook something similar with Open Office (or Libre
Office) Base which has the advantage not to be tied into Microsoft
OS's. If you need something that can be used by multiple users
concurrently chances are that Access is not the best choice.
Post by Hilary Bailey
The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.
What exactly does "real time" mean in your context? I figure, human
beings need to give this system some input data before it can spit out
any new information.
Post by Hilary Bailey
As you can tell, there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..
What does "system" exactly mean here? Is it a mathematical model that
you want to implement in software? Is it a software system that you
need to improve / extend?
Post by Hilary Bailey
Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?
Therefore, I figured that, doing it all by myself may be the best
solution. However, some of my concerns are: "Why reinvent the wheel?',
Good question. It's usually a bad idea.
Post by Hilary Bailey
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?
Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
Clarify your requirements *first*. Write down a list of things that
your system needs to do, e.g. things like "someone in every school in
the district needs to be able to enter course grades" or "I want to be
notified immediately if some metric X changes". Then we can start
about thinking how such a solution might look like and finally we can
help you develop a curriculum for your training so you can build what
you want. I do assume though that it will take you in the order of
months to arrive there if you do not have an IT background.
Kind regards
robert
What I want to create is a product that is computer accessible, that is
similar to a teacher's Grade Keeper, but goes farther by adding defined
info from principals, guidance counselors, lunch provision for students,
etc.. The reason for this approach is that this will now allow more
complete view of a what impacts a child.
Therefore, the daily entry of data from all participants (teachers,
principals, security, janitors, etc...) will give an analyzer a wider
set of defined parameter inputed data to access, then analyze. The
problem is where to start. I read a book on Ruby, some say that my next
step is to play with scripts, alter some commands and then test such
adjustments. The problems is to follow a logical sequence of learning.
For example, since i use Windows 7, have installed Ruby 1.9.2 p.136 and
Rails, Vim7.2, and LibreOffice 3.3. and saved info to htmldog.com from
which HTML & CSS can be learned.
I know very well that it will take me some time, however, now where do I
start? Should I star with htmldog tutorials, then open Rails along with
vim7.2, then the next stage will be to explore SQlite, then MYSQL, while
having LibreOffice Base as a source of reference?
In terms of distribution, giving it away free will not be taken
seriously by current educational administrators and policy makers. It
suits me to market it and if successful, support this community plus
other social causes of choice.
So based on all that have been said, where, specifically (if possible)
go from here in creating such a product.
--
Posted via http://www.ruby-forum.com/.
Robert Klemme
2011-02-09 10:05:55 UTC
Permalink
Post by Hilary Bailey
What I want to create is a product that is computer accessible, that is
similar to a teacher's Grade Keeper, but goes farther by adding defined
info from principals, guidance counselors, lunch provision for students,
etc.. The reason for this approach is that this will now allow more
complete view of a what impacts a child.
I consider it an interesting question (although completely off topic
here) whether all these aggregated figures can give clear information
which school works good and which works bad. I'd say you need a *lot*
of data from various sources to even get close to this goal. And
before you reach your goal you might hit some privacy legislation
wall...
Post by Hilary Bailey
Therefore, the daily entry of data from all participants (teachers,
principals, security, janitors, etc...) will give an analyzer a wider
set of defined parameter inputed data to access, then analyze.
OK, so a web based solution is probably most appropriate since it
avoids having to install software on a lot of systems. But don't
forget to write the complete requirements list!
Post by Hilary Bailey
The
problem is where to start. I read a book on Ruby, some say that my next
step is to play with scripts, alter some commands and then test such
adjustments. The problems is to follow a logical sequence of learning.
For example, since i use Windows 7, have installed Ruby 1.9.2 p.136 and
Rails, Vim7.2, and LibreOffice 3.3. and saved info to htmldog.com from
which HTML & CSS can be learned.
I know very well that it will take me some time, however, now where do I
start? Should I star with htmldog tutorials, then open Rails along with
vim7.2, then the next stage will be to explore SQlite, then MYSQL, while
having LibreOffice Base as a source of reference?
Start with the basics. If you are new to programming, you need to
learn to program (incidentally this is the title of a tutorial by
Chris Pine). After you understood that you can tackle HTML (and CSS -
web design in general) and finally SQL basics (and the relational
model and data modeling). Then you can pull it all together and look
at Rails (or any other web framework).

With this order you will be able to write programs first, then write
programs showing HTML pages and learn how the web browser interacts
with the web server. Then you will know how to model persistent data
and can use that with Rails et al.

Good luck!

robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
Mike Stephens
2011-02-09 12:12:34 UTC
Permalink
Post by Robert Klemme
I consider it an interesting question (although completely off topic
here) whether all these aggregated figures can give clear information
which school works good and which works bad.
I agree the propostion is somewhat spurious. We in the UK have a lot of
this target/metrics-orientation and it naturally leads to distortion,
obfuscation, lies and game-playing. The idea that people would reliably
self-report on items of major importance to their school's, or their own
personal future standing and funding, is perhaps naive.

The overall topic however is valid because it touches upon the issue of
how Ruby (or other alternatives) fit in to the World of a non-IT
professional building relatively straight-forward applications.

If you are a Ruby expert, you could knock up something like this in a
morning, based on a 15-20 minute chat. If you are new to programming,
it's a task that may take months or more.

Personally, I think Ruby (or Rails) is like the latest Airbus airliner.
It has all sorts of fantastic features to make it dead easy to do
difficult things in bad weather at bad airports, but you have to be a
trained pilot before you set foot in the simulator.

It's odd that we can't agree what other platform should be recommended
in these circumstances.
--
Posted via http://www.ruby-forum.com/.
Hilary Bailey
2011-02-11 01:41:49 UTC
Permalink
So Mike,
Since a database seems to be the bulk on the creation of a my intended
Ed web application/software, should I consider the SQLs or just use the
LibreOffice Base along with its Spreadsheet, and then use further
analysis from the OpenSource statistical program PSPP to integrate
aspects of a)data entry b)other operational skills that (I think) many
not be offered Base, and then c)further statistical crunching?

Therefore, is it possible to use available OpenSource softwares to piece
together a web application/software? I know that I have to acquaint
myself with Base and the others, but should I design around the SQLs or
Base? Also, just in case anyone reading along or would like to provide
their expertise, I am not afraid of "getting my hands dirty" while
learning. So I prefer going the properly logically sensible way, without
having to reinvent the wheel.So please, I will greatly appreciate ANY
AND MANY more comments as they have certainly help clarify a lot of
questions regarding programming.
Post by Mike Stephens
Post by Robert Klemme
I consider it an interesting question (although completely off topic
here) whether all these aggregated figures can give clear information
which school works good and which works bad.
I agree the propostion is somewhat spurious. We in the UK have a lot of
this target/metrics-orientation and it naturally leads to distortion,
obfuscation, lies and game-playing. The idea that people would reliably
self-report on items of major importance to their school's, or their own
personal future standing and funding, is perhaps naive.
The overall topic however is valid because it touches upon the issue of
how Ruby (or other alternatives) fit in to the World of a non-IT
professional building relatively straight-forward applications.
If you are a Ruby expert, you could knock up something like this in a
morning, based on a 15-20 minute chat. If you are new to programming,
it's a task that may take months or more.
Personally, I think Ruby (or Rails) is like the latest Airbus airliner.
It has all sorts of fantastic features to make it dead easy to do
difficult things in bad weather at bad airports, but you have to be a
trained pilot before you set foot in the simulator.
It's odd that we can't agree what other platform should be recommended
in these circumstances.
--
Posted via http://www.ruby-forum.com/.
Jeremy Bopp
2011-02-11 06:11:33 UTC
Permalink
Post by Hilary Bailey
Therefore, is it possible to use available OpenSource softwares to piece
together a web application/software? I know that I have to acquaint
myself with Base and the others, but should I design around the SQLs or
Base? Also, just in case anyone reading along or would like to provide
their expertise, I am not afraid of "getting my hands dirty" while
learning. So I prefer going the properly logically sensible way, without
having to reinvent the wheel.So please, I will greatly appreciate ANY
AND MANY more comments as they have certainly help clarify a lot of
questions regarding programming.
Hi, Hilary,

As you're sure to have gathered by now, doing what you want to do takes
quite a bit of knowledge and experience, especially if you want to do it
all yourself. Even stating the problem you want to solve with your
software isn't easy once you try to go beyond the high level and delve
into the details.

Would you feel comfortable building a new wing for your local elementary
school all by yourself based only on the discussions you have with
employees at a nearby hardware store or construction site? Even if the
materials and tools are free, your time is not, and you probably
wouldn't have the greatest faith in the quality of what you built as
your first project anyway.

Given your apparent inexperience in this field, you should probably
consider doing one or more of the following before going much further:

* Take some computer programming classes from your local community
college or continuing education institutions.
* Perform simple, proof-of-concept tasks using the tools you have
discussed so far.
* Request quotes from a few contracting or consulting firms to write
your software directly.

The goal is for you to have: 1) a foundation upon which to build your
skills, 2) some experience using the necessary tools, and 3) an idea of
what it costs in time and money to perform this work professionally.

You may find that you don't like this level of software development in
the end. It's not for everyone. As an analogy, I don't mind fixing my
fence when part of it breaks, but I'll either hire someone else to build
a new fence from scratch or learn to do without one. ;-)

Good luck and happy learning!

-Jeremy
Mike Stephens
2011-02-11 08:15:36 UTC
Permalink
Post by Hilary Bailey
So Mike,
Since a database seems to be the bulk on the creation of a my intended
Ed web application/software, should I consider the SQLs or just use the
LibreOffice Base along with its Spreadsheet.
I think what the essence of your application is, is to get people to
submit various data, and then you want to aggregate that to a) detect
correlations and b) measure individuals/groups against all or some other
individuals or groups.

This is the bread-and-butter of corporate life and the Sofware King in
this domain is Excel, or perhaps The Software Capo di tutti Capi.

They don't use Java. They don't use C#, and they certainly don't use
Ruby.

The great thing about Excel (or OpenOffice) is that everyone knows how
to use it. If not, they can ask the person sitting next to them.

To be honest, it's not really a database problem. Obviously a database
can play a part but you are not maintaining complex relationships and
business rules. You are looking for patterns.

I am developing multi-million international web sites. They are written
by a team of highly trained .NET programmers. There's not a spreadsheet
to be seen in the applications but underneath, that's where at least
some of the data came from originally.

So I guess Step 1 is to build your model in an office suite. It would be
quite ambitious to just launch something without prototyping the model.

Unfortunately I doubt it's easy to 'publish' your app either as a GUI or
Web product. You'd need to start again. Which brings us back to
something like Rails, an app generator like Mendix, or going on the
Internet and getting somebody to write it for you in India.

I wouldn't be on this channel if I didn't think Ruby was as easy as
other full-strength platforms to do a proper web site. My obsession in
life is to do the least possible in any context.

I'll give you an analogy - I think you're wanting to go on holiday to
Hawaii but assuming you first need to become a trained commercial pilot.
Consider letting someone/something else do the delivery, leaving you to
plan the content.
--
Posted via http://www.ruby-forum.com/.
Robert Klemme
2011-02-11 14:10:04 UTC
Permalink
Post by Mike Stephens
Post by Hilary Bailey
So Mike,
Since a database seems to be the bulk on the creation of a my intended
Ed web application/software, should I consider the SQLs or just use the
LibreOffice Base along with its Spreadsheet.
I think what the essence of your application is, is to get people to
submit various data, and then you want to aggregate that to a) detect
correlations and b) measure individuals/groups against all or some other
individuals or groups.
This is the bread-and-butter of corporate life and the Sofware King in
this domain is Excel, or perhaps The Software Capo di tutti Capi.
They don't use Java. They don't use C#, and they certainly don't use
Ruby.
That might be true for analysis...
Post by Mike Stephens
The great thing about Excel (or OpenOffice) is that everyone knows how
to use it. If not, they can ask the person sitting next to them.
Unfortunately many Excel sheets look exactly like that: people who
think they know how to use spreadsheets create amazingly complex
things that could be made much simpler and break at the first change.
I am constantly amazed at how many people build macros into their
sheets for things that can be solved with cell functions - which I
believe is the primary tool for in Excel and the like.
Post by Mike Stephens
To be honest, it's not really a database problem. Obviously a database
can play a part but you are not maintaining complex relationships and
business rules. You are looking for patterns.
... but having several people entering data into a single Excel sheet
(or even worse: several Excel sheets) is a nightmare right from the
start.
Post by Mike Stephens
I am developing multi-million international web sites. They are written
by a team of highly trained .NET programmers. There's not a spreadsheet
to be seen in the applications but underneath, that's where at least
some of the data came from originally.
So I guess Step 1 is to build your model in an office suite. It would be
quite ambitious to just launch something without prototyping the model.
Getting a clear idea of the model is certainly reasonable. But to get
that one needs at least moderate understanding of data modeling, how
those models are represented (UML is still no subject in schools, I
guess) and how they are built to satisfy various criteria. I think
for someone not knowledgeable in IT some basic training must come
first. Without that chances are that what is prototyped in Excel or
any other tool with nice graphical user interface won't work properly.
Post by Mike Stephens
Unfortunately I doubt it's easy to 'publish' your app either as a GUI or
Web product. You'd need to start again. Which brings us back to
something like Rails, an app generator like Mendix, or going on the
Internet and getting somebody to write it for you in India.
I wouldn't be on this channel if I didn't think Ruby was as easy as
other full-strength platforms to do a proper web site. My obsession in
life is to do the least possible in any context.
I'll give you an analogy - I think you're wanting to go on holiday to
Hawaii but assuming you first need to become a trained commercial pilot.
Consider letting someone/something else do the delivery, leaving you to
plan the content.
Until now it was never mentioned that there is actually a team or that
"someone else" you mentioned. So at least for the moment it seems
this is not an option.

Cheers

robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
Hilary Bailey
2011-02-12 13:57:40 UTC
Permalink
Post by Mike Stephens
Post by Hilary Bailey
So Mike,
Since a database seems to be the bulk on the creation of a my intended
Ed web application/software, should I consider the SQLs or just use the
LibreOffice Base along with its Spreadsheet.
I think what the essence of your application is, is to get people to
submit various data, and then you want to aggregate that to a) detect
correlations and b) measure individuals/groups against all or some other
individuals or groups.
This is the bread-and-butter of corporate life and the Sofware King in
this domain is Excel, or perhaps The Software Capo di tutti Capi.
They don't use Java. They don't use C#, and they certainly don't use
Ruby.
The great thing about Excel (or OpenOffice) is that everyone knows how
to use it. If not, they can ask the person sitting next to them.
To be honest, it's not really a database problem. Obviously a database
can play a part but you are not maintaining complex relationships and
business rules. You are looking for patterns.
I am developing multi-million international web sites. They are written
by a team of highly trained .NET programmers. There's not a spreadsheet
to be seen in the applications but underneath, that's where at least
some of the data came from originally.
So I guess Step 1 is to build your model in an office suite. It would be
quite ambitious to just launch something without prototyping the model.
Unfortunately I doubt it's easy to 'publish' your app either as a GUI or
Web product. You'd need to start again. Which brings us back to
something like Rails, an app generator like Mendix, or going on the
Internet and getting somebody to write it for you in India.
I wouldn't be on this channel if I didn't think Ruby was as easy as
other full-strength platforms to do a proper web site. My obsession in
life is to do the least possible in any context.
I'll give you an analogy - I think you're wanting to go on holiday to
Hawaii but assuming you first need to become a trained commercial pilot.
Consider letting someone/something else do the delivery, leaving you to
plan the content.
Distinguish community,
Thanks again for such comments. I already build an Excel model which
consist of many files.I also wrote a layman methodology which includes a
graphical representation, explaining the relationship between and among
different contributors, the reporting system, defined the contributors,
what kind of information can be entered, who to target, red flags as
warning signs, and many other parameters. Over the years (20 years) I
have been using a smaller component of this creation, but now, after
seeing what my school district, and other districts use as a source of
information/data management, I think that my written model surpasses
their presentation tools.

Now it is time to role up my sleeves and get to work. I am not afraid of
spending countless hours working on learning. Secondly, I am not trying
to find a cute shortcut to creating a program. My great concern is where
to start, and having started, knowing the possible steps to take
(different tools such as Vim, HTML, SQLs) to have the understanding. As
I mentioned, many moons gone by, I do not have the finance to pay for
such expertise, also I am aware that due to the USA financial mess,
seeking private grants is almost virtually impossible. For others who
are fortunate to have the financial resources, good for them, my reality
is a bit different.

Therefore at this point I think that I have gathered a whole lot of
valuable information from a great community. My approach will be to
attack my dream with the following curriculum:
a)as described by Phillip G -Pick up the necessities of HTML,
CSS, and JavaScript - Learn about application security (this is very,
very important on the internet!)- Learn about deployment options for
Rails.
b) as mentioned by Shern - Check out <http://htmldog.com
c) as noted by Guecker928 - (during the learning process),
seek-out a marketing\legal\strategic plan.
d) As the whole community have said - take time and avoid
shortcuts.

Finally, I am very impressed with this board. And as I follow this guide
(2/3 year guide) the community will keep providing novices like myself
the tools necessary to learn, build and someday add to the support of
this OpenSource environment.

Respectfully,

Hilary


--
--
Posted via http://www.ruby-forum.com/.
Guecker928
2011-02-12 05:23:52 UTC
Permalink
Having been in and around software design for far longer than I care to  admit, here is some of what I have "learned" over the years about software design projects.    Almost all of the successful  marketable software design projects I have been involved in and observed over the years seem to have a few traits in common that tend to lead to their success.  

I also apologize in advance to the board that the main points in this post  aren't really ruby related at all and should probably be moved to a different board more centered around the business aspects of software design.

First off, at the very beginning of the project there are at least three key roles that should be filled before the software design should seriously begin.  However don't let me or anyone else discourage you from trying. Be sure and read the last paragraph about what I think you should be focusing on in these early stages.  In any case, it will be a great learning experience for you!  The three key roles before the software design project really begins are the marketing role, the legal role, and the finance role. 

The marketing role needs to decide if there will be demand for the software that you are going to produce, when will you  produce it and identifying which customers appear willing to pay good money for it.   Who are the competitors?  Is your product a clone+ of something else?  How will you productize it, package it, promote it, etc.  If there is a real demand for your product there should be a company that will help sponsor its development or at least help you alpha and beta test. 

The legal role involves walking the mine field of software design legalities regarding reuse of other's ideas/codes/tools, etc. so that you don't get close to market only to find out that others, perhaps even one of your competitors, has deeper legal pockets than you and may even try to tie you up on legalities that may have escaped your attention while you burn off your cash in court.

The last role is the finance role.  In order to quickly move an idea and a viable product to market generally will require some capital.  All of your own time spent on this project is time that isn't available for other endeavors.  And as others on this board have already suggested, it will be incredibly challenging for one person to fill all of the key roles involved in a project of this nature.  

In the good old days 10-15 years ago, here in the States anyway,  before the dotcom bubble burst practically anyone with a good idea could put together a team and venture capitalists/angel investors would fall all over themselves to fund it.  Such is not the case anymore!

The last paragraph:  Whenever I find myself going in circles, I generally take a long hard look at my project's scope.  I would suggest that you should simplify your current plan's scope  to not include any of the business aspects yet regarding  a new proposed software solution or any proposed enhancements to their current system but should totally focus first on developing a software prototype using currently available tools to accurately model those aspects of the current environment of an educational system that are of interest to you.  Only after you have successfully modeled the current environment as you now know it should you begin to look at ways to enhance it.  In many software systems that have been in the field for a while,  things tend to work the way they do(trade-offs) because of an evolution to meet some customer marketing need. 

With this down-sized scope, this will still be a great technical learning endeavor for you to experience developing a real-life software prototype.   This will also be very useful for you to evaluate the software model's complexity, to test your own understanding of the environment, to evaluate the software tools available today and their capabilities, etc. etc..   

Generally, in my opinion anyway, successfully  writing fundable, fully maintainable secure marketable legal software generally will typically require the expertise of some marketing, legal, finance, and  software design professionals that have already been there and done that.

--- On Mon, 2/7/11, Hilary Bailey <***@gmail.com> wrote:

From: Hilary Bailey <***@gmail.com>
Subject: Re: Totally lost in learning Ruby
To: "ruby-talk ML" <ruby-***@ruby-lang.org>
Date: Monday, February 7, 2011, 6:16 PM

Hi everybody,
Based on the responses I have been receiving, I will greatly appreciate
any comment on how to move forward from this point. Thanks in advance to
all respondents whom have been soooooo kind and patient.

What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed  through/by Microsoft Solver
software.

The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.

As you can tell,  there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..

Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?

Therefore, I figured that, doing it all by myself may be the best
solution.  However, some of my concerns are: "Why reinvent the wheel?',
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?

Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
--
Posted via http://www.ruby-forum.com/.
Guecker928
2011-02-12 06:26:50 UTC
Permalink
Having been in and around software design for far longer than I care to 
admit, here is some of what I have "learned" over the years about
software design projects.    Almost all
of the successful  marketable software design projects I have been
involved in and observed over the years seem to have a few traits in
common that tend to lead to their success.  

I also apologize in
advance to the board that the main points in this post  aren't really
ruby related at all and should probably be moved to a different board
more centered around the business aspects of software design.

First
off, at the very beginning of the project there are at least three key
roles that should be filled before the software design should seriously
begin.  However don't let me or anyone
else
discourage you from trying. Be sure and read the last paragraph about
what I think you should be focusing on in these early stages.  In
any case, it will be a great learning experience for you!  The three
key roles before the software design project really begins are the
marketing role, the legal role, and the finance role. 

The
marketing role needs to decide if there will be demand for the software
that you are going to produce, when will you  produce it and identifying
which customers appear willing to pay good money for it.   Who are the
competitors?  Is your product a clone+ of something else?  How will you
productize it, package it, promote it, etc.  If there is a real demand
for your product there should be a company that will help sponsor its
development or at least help you alpha and beta test. 

The legal
role involves walking the mine field of software design legalities
regarding reuse of other's ideas/codes/tools, etc. so that you don't
get close to market only to find out that others, perhaps even one of
your competitors, has deeper legal pockets than you and may even try to
tie you up on legalities that may have escaped your attention while you
burn off your cash in court.

The last role is the finance role. 
In order to quickly move an idea and a viable product to market
generally will require some capital.  All of your own time spent on this
project is time that isn't available for other endeavors.  And as
others on this board have already suggested, it will be incredibly
challenging for one person to fill all of the key roles involved in a
project of this nature.  

In the good old days 10-15 years ago,
here in the States anyway,  before the dotcom bubble burst practically
anyone with a good idea could put together a team and venture
capitalists/angel investors would fall all
over themselves to fund it.  Such is not the case anymore!

The
last paragraph:  Whenever I find myself going in circles, I generally
take a long hard look at my project's scope.  I would suggest that you
should simplify your current plan's scope  to not include any of the
business aspects yet regarding  a new proposed software solution or any
proposed enhancements to their current system but should totally focus first on developing a software prototype
using currently available tools to accurately model those aspects of
the current environment of an educational system that are of interest to
you.  Only after you have successfully modeled the current
environment as you now know it should you begin to look at ways to
enhance it.  In many software systems that have been in the field for a
while,  things tend to work the way they do(trade-offs) because of an
evolution to
meet some customer marketing need. 

With this down-sized scope,
this will still be a great technical learning endeavor for you to
experience developing a real-life software prototype.   This will also
be very useful for you to evaluate the software model's complexity, to
test your own understanding of the environment, to evaluate the software
tools available today and their capabilities, etc. etc..   

Generally,
in my opinion anyway, successfully  writing fundable, fully
maintainable secure marketable legal software generally will typically
require the expertise of some marketing, legal, finance, and  software
design professionals that have already been there and done that.

--- On Mon, 2/7/11, Hilary Bailey <***@gmail.com> wrote:

From: Hilary Bailey <***@gmail.com>
Subject: Re: Totally lost in learning Ruby
To: "ruby-talk ML" <ruby-***@ruby-lang.org>
Date: Monday, February 7, 2011, 6:16 PM

Hi everybody,
Based on the responses I have been receiving, I will greatly appreciate
any comment on how to move forward from this point. Thanks in advance to
all respondents whom have been soooooo kind and patient.

What I want to create is a database that can measure the performance of
all entities in a school district. The closest software that exhibits
some semblance is that of Microsoft Access. Where, as I understand it,
the input entry of a single data can be housed and then derived, through
a set of queries, then further analyzed  through/by Microsoft Solver
software.

The difference with my proposal would be that based on selected
indicators [which will be dynamically influenced by changed event(s) and
policy(ies], which would be able to measure success. I have been exposed
to a statistical software named SPSS and having worked as an economist,
has influenced my outlook on creating an approach/database/software
which would indicate in real time, measured results.

As you can tell,  there is an element of nervousness regarding saying
too much. But on the other hand, if not much is said, not much help can
be given. So it's a "catch 24", where since the last 20 years I have
been improving on a systems that would be able to measure defined
academic output, vis-a-vis, financial constraints etc..

Mike Stephens recommended Mendix as a possible solution to my woes. Do
you know of such arena?

Therefore, I figured that, doing it all by myself may be the best
solution.  However, some of my concerns are: "Why reinvent the wheel?',
How can I create a sustainable system that does not compromise quality?,
What curriculum structure should I follow that will meet my needs
without, straying from my goals?

Therefore, this is my dilemma, which seems to be going in circles. Any
suggestions.
--
Posted via http://www.ruby-forum.com/.
EiNZTEiN
2011-02-11 04:51:01 UTC
Permalink
Post by Hilary Bailey
This is my second attempt to understand Ruby. I completely read 1)
"Beginning Ruby- From Novice to Professional (which to me is a
completely waste of time), 2) The Pragmatic approach to Ruby (which is
incomplete)3)Ruby in 20 minutes, 4)other 15 to 20 minutes cute intro
programs 5) Shoes and now 6)The Book of Ruby by Huw Collingourne, which
seems like a bible without a compiler, which may be totally useless.
Is there anyone out there that could make my experience to Ruby
practical and meaningful? As noted previously, I am a school teacher
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
Is there a free compiler and other supporting software that I can use to
make my so far miserable learning Ruby experience worth a while? So far
I am still sold on the idea that Ruby is the programing language to
know, but at this moment I really need HELP.
Tk in advance,
Hilary
I don't know if anybody else already said this but… did you really go
through those books and don't understand the basic concepts of Ruby and
are looking for a compiler? Gosh…

-E
Michael J. Welch, Ph.D.
2011-02-11 18:15:06 UTC
Permalink
Post by Hilary Bailey
I am a school teacher
Post by Hilary Bailey
trying to create an education database software for administrators and
teachers which will hold educational institutions accountable for the
performance of their school district. My only programming experience is
the confusion I had trying to read and comprehend the above sources that
do not offer a stable compiler or the appropriate programs that will go
hand in hand with their book or resource for Ruby.
No offense meant, but creating a programming project like you are
describing is very complex. You need Ruby, MySQL, HTML, CSS, Rails, and
probably a few other technologies just to start a project like that. I
suggest you hire professional help, or plan to spend a year learning the
basics of programming and web building. I would suggest reviewing
existing projects and products for school administration.

Also, programming is like math. You can't learn it by reading a book and
skimming over the detail. You have to get in and do the problems. In
programming, you read the book(s) just to find out where the information
is, then you start working on your own program. As you need stuff, you
go back to the book(s) for explanations and examples. As you solve each
little thing that comes up, your skills improve. You can't learn
programming without doing it, and it doesn't take just a few days, it
takes months or years. I know; I used to teach programming at the
college level. Some people just "get it," and some never "get it."

--Dr. Mike
Hilary Bailey
2011-02-12 12:45:39 UTC
Permalink
Post by EiNZTEiN
Post by Hilary Bailey
teachers which will hold educational institutions accountable for the
Tk in advance,
Hilary
I don't know if anybody else already said this but… did you really go
through those books and don't understand the basic concepts of Ruby and
are looking for a compiler? Gosh…
-E
Dear E(Dr. Gosh...,
This point has already been clarified. It is not a matter of trying to
find an easy way out, but rather accessing and working with a community
that is not afraid to inform and guide anyone ( including experts like
yourself).

I find it very exiting that there actually exits a community that
challenges then notion that the Microsofts of this world are the one and
ONLY approach to technology and innovation. Therefore Dr. Gosh...and to
the many that seems to be caught-up in their own brilliance......you
don't have to respond to novices like myself. As a teacher I am just
trying to decipher how to approach a dream, that one day, I will be able
to create something new via computer languages. Now, to me, this is
exiting!!!
--
Posted via http://www.ruby-forum.com/.
Continue reading on narkive:
Loading...