Novice school teacher seeking help in programming

H

Hilary Bailey

I will like to know how to use programming languages to create a
computer software. I was advised to start with Ruby. Half-way through
'Beginning Ruby From Novice to Professional', it refers to C and/or C++
as fundamentals. HELP. What is a practical approach to learning how to
create a computer software from scratch. I am in the the field of
secondary education with some knowledge of Excel, Words and SPSS.

Thanking you in advance for your response

Hilary Bailey
 
J

Jesús Gabriel y Galán

I will like to know how to use programming languages to create a
computer software. I was advised to start with Ruby. Half-way through
'Beginning Ruby From Novice to Professional', it refers to C and/or C++
as fundamentals. HELP. What is a practical approach to learning how to
create a computer software from scratch. I am in the the field of
secondary education with some knowledge of Excel, Words and SPSS.

Perhaps this book is more appropriate for an absolute beginner?

http://pine.fm/LearnToProgram

Jesus.
 
H

Hilary Bailey

Jesús Gabriel y Galán said:
Perhaps this book is more appropriate for an absolute beginner?

http://pine.fm/LearnToProgram

Jesus.

Jesus, the book is just as similar to Beginning Ruby From Novice to
Professional. Do i have to learn C and or C++ before even thinking of
using Ruby or attempting to write a software?

Tk in advance
 
J

Jesús Gabriel y Galán

Jesus, the book is just as similar to Beginning Ruby From Novice to
Professional.

I don't know, I see Chris Pine's recommended a lot in this list, and
it seems to really target people who are starting.
Do i have to learn C and or C++ before even thinking of
using Ruby or attempting to write a software?

Not at all. I think Ruby can make a good first language. It also
depends to which extent you want to be a programmer. In my opinion at
some point learning C does you good, cause you learn how low level
things work. I think you can start with Ruby and see where this takes
you, then decide from there. There are many languages and many
programming paradigms. At some point it's good to learn language from
different paradigms to broaden your perspective.

Jesus.
 
A

Aldric Giacomoni

Hilary said:
What is a practical approach to learning how to
create a computer software from scratch.

Write programs yourself. A good place to start is
http://projecteuler.net/ especially because it may force you to do
research online about whatever algorithms it may be talking about.
Online research is important.
Write some more programs. Read the documentation and API when necessary
( http://ruby-doc.org/core/ ).
Write some more programs. Ask for help here on how to do things you
don't understand.
Write some more programs. Look up and read Why's Poignant Guide to Ruby.

That's the gist of it, to get started.

Next steps:

Read people's code.
Write programs.
Read people's code.
Send in patches (optional but appreciated) for other people's code.
Read people's code.
Write programs.
 
H

Hilary Bailey

Matthew said:
No, you don't need to learn C. I just read the first couple of chapters
of the Pine book, and didn't see anything relating to C, but your
mileage
may vary.

Taking a step back, what sort of program are you wishing to write? What
sort of problem are you hoping to solve?

Matt

Hi Matt,

It is a program that will evaluate the progress of a school district.
 
M

Matthew K. Williams

Hi Matt,

It is a program that will evaluate the progress of a school district.

Ok, I assume you need to enter data and perform some sort of calculation.
Does the data already exist in some format, or will it be entered
manually?

Is the data grouped by school, teacher, etc? How is the data organized?

Do you want the data to be able to be saved and/or accumulated over time?

How do you want users to interract with the program? On a command line or
via a web interface? Will there be more than one user?

What sort of report(s) and/or response to the user do you wish to provide?

Lots of questions, I know, but these are things to consider in the
process. I've found it useful to think at a high level about the
following:

1. What I have (data, etc.)
2. What I need (output and other requirements)
3. How I get there (calculations, etc.)

Once you have an idea of how to answer these questions, you can proceed
from there.

Matt
 
R

Robert Klemme

Matthew K. Williams wrote:

It is a program that will evaluate the progress of a school district.

Do you really need to program for that? I imagine the progress of a
school district is measured in terms of a bunch of statistical figures.
If that's the case then you might be able to build on your Excel
skills. Excel is a really great tool which can do amazing things for
you (legal notice: I do not claim that it can make coffee). And you can
even combine it with nearly any relational database to pull data from
and visualize it. (OpenOffice can do similar things but the online
documentation is by far not as good as Excel's.)

Kind regards

robert
 
R

Richard Conroy

Jesus, the book is just as similar to Beginning Ruby From Novice to
Professional. Do i have to learn C and or C++ before even thinking of
using Ruby or attempting to write a software?
Are we talking about the same book? I am trying to recall any mention of
C or C++ in Learn to Program whatsoever, unless it was placing it in
context.

You might want to look out for Shoes, or the Hackety Hack Ruby extensions.
They use Ruby as a baseline. but simplify it further specifically for
helping
beginners & kids to learn programming.

--=20
http://richardconroy.blogspot.com
 
H

Hilary Bailey

Richard said:
Are we talking about the same book? I am trying to recall any mention of
C or C++ in Learn to Program whatsoever, unless it was placing it in
context.

You might want to look out for Shoes, or the Hackety Hack Ruby
extensions.
They use Ruby as a baseline. but simplify it further specifically for
helping
beginners & kids to learn programming.

On pgs 296 and 297. There is not clarity as how to use the million of
concepts. Someone recommended to abandon Ruby and go directly to Ruby on
Rails, as it offers more flexibility while learning Ruby and also Rails.
 
H

Hilary Bailey

Robert said:
Do you really need to program for that? I imagine the progress of a
school district is measured in terms of a bunch of statistical figures.
If that's the case then you might be able to build on your Excel
skills. Excel is a really great tool which can do amazing things for
you (legal notice: I do not claim that it can make coffee). And you can
even combine it with nearly any relational database to pull data from
and visualize it. (OpenOffice can do similar things but the online
documentation is by far not as good as Excel's.)

Kind regards

robert

Hi Robert,
I have an innovation that goes beyond what is in place
 
J

Jim Maher

As has been pointed out, NO you do NOT need to learn C.

I believe Ruby is a better place to start programming. But learning to
program is not "easy", and certainly not quick. Worth it, but requires
much work.

Matt started asking the kind of questions you need to answer before you
start any program. Robert pointed out that - maybe - you don't need a
custom program to do what you want.

If you want to learn to program, good for you! Use BOTH the book you
have and Pine's. Read them like novels, just to get an orientation to
programming and Ruby. Then decide if you want to proceed with learning
to program. If so, the problem you state is a fine place to start.

If you just want to solve the problem, I would suggest that you do it in
Excel. In fact, you should consider doing it in Excel, even if you WILL
write the program. By doing it in Excel first, you'll start to answer
the kind of questions Matt raised.

Have fun!

Jim Maher
 
M

Matthew K. Williams

On pgs 296 and 297. There is not clarity as how to use the million of
concepts. Someone recommended to abandon Ruby and go directly to Ruby on
Rails, as it offers more flexibility while learning Ruby and also Rails.

I'm confused -- can you point to an url in the online Learn to Program
book? (http://pine.fm/LearnToProgram) Or is pp 296-297 in the other book?

Also, what do you mean as there being no clarity as how to use the million
of concepts? The Learn To Program book has, as I recall, a lot of little
exercises to help you with applying the information in each chapter.

Or is it more an issue of not knowing where/how to start and what to use
where/when?

Matt
 
W

William Rutiser

Matthew said:
I'm confused -- can you point to an url in the online Learn to Program
book? (http://pine.fm/LearnToProgram) Or is pp 296-297 in the other
book?

Also, what do you mean as there being no clarity as how to use the
million of concepts? The Learn To Program book has, as I recall, a
lot of little exercises to help you with applying the information in
each chapter.

Or is it more an issue of not knowing where/how to start and what to
use where/when?

Matt
Chris Pine's book only has 230 pages. The first edition had 149 pages.

Learn to Program
Chris Pine
Pragmatic Bookshelf
ISBN 0-9766940-4-2
http://www.pragprog.com/titles/ltp2/learn-to-program-2nd-edition

Bill
 
H

Hilary Bailey

William said:
Chris Pine's book only has 230 pages. The first edition had 149 pages.

Learn to Program
Chris Pine
Pragmatic Bookshelf
ISBN 0-9766940-4-2
http://www.pragprog.com/titles/ltp2/learn-to-program-2nd-edition

Bill
You are right. They are two different books. The one I am reading is
Beginning Ruby From Novice to Professional. I will take your advice and
finish the book (which I am half-way through), if there are any more
problems then look at your recommendations
 
J

Josh Cheek

[Note: parts of this message were removed to make it a legal post.]

I will like to know how to use programming languages to create a
computer software. I was advised to start with Ruby. Half-way through
'Beginning Ruby From Novice to Professional', it refers to C and/or C++
as fundamentals. HELP. What is a practical approach to learning how to
create a computer software from scratch. I am in the the field of
secondary education with some knowledge of Excel, Words and SPSS.

Thanking you in advance for your response

You should think about whether you're wanting to learn enough programming to
solve some problems, or really get deep into it, understanding the internals
and implementation. If it's the former, then I wouldn't touch a low level
language. If the latter, then learning C would be good for your
understanding of computer science, and even Assembly from there would really
ground some of the things you do, all the way down to the hardware.

But it sounds like you're wanting to program for pragmatic reasons, so I'd
strongly suggest you don't go near C, to do anything nontrivial in C
requires a huge amount of time and knowledge, and C gets out of hand
quickly. Stick with Ruby.

On pgs 296 and 297. There is not clarity as how to use the million of
concepts. Someone recommended to abandon Ruby and go directly to Ruby on
Rails, as it offers more flexibility while learning Ruby and also Rails.
If you're wanting to make a simple web app, then I'd suggest starting with
Sinatra, it is much easier to start with. If what you want to do is more
complex, then Rails is the way to go, it just takes a while to get the hang
of rails (or did for me, at least), Rails is almost a language in itself.
For Sinatra, I really enjoyed the peepcode screencast
https://peepcode.com/products/sinatra

Write programs yourself. A good place to start is
http://projecteuler.net/ especially because it may force you to do
research online about whatever algorithms it may be talking about.
Online research is important.

That's where I started ^_^ I also started with C, but recommend against it,
I think it is a miserable language that saps all the joy of programming. I
picked up Ruby, because C wasn't able to handle numbers large enough to
solve Project Euler problems, very glad I did.
 
R

Robert Klemme

Hi Robert,
I have an innovation that goes beyond what is in place

And? What kind of things do you want to do that cannot be done with the
existing solution?

Kind regards

robert
 
H

Hilary Bailey

Robert said:
And? What kind of things do you want to do that cannot be done with the
existing solution?

Kind regards

robert

Hi Robert,
The type of innovation has to do with very specifically measure how we
accounting for success in view of different variants of general mishaps.
This models goes beyond the educational outlook
 
S

Steve Klabnik

[Note: parts of this message were removed to make it a legal post.]

Unfortunately, right now, I'd suggest using Shoes 2. It's great and stable.
Hackety is being built for Shoes 3, which is taking a little bit of time to
get out the door.

So, as much as it pains me, I can't recommend Hackety yet...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,900
Latest member
Nell636132

Latest Threads

Top