Tag Archives: python

Don’t know but likely should (I’ve edited this a bit from its original post)

Some more coding info passed along from a friend…I need some sleep

 

Some of the major languages are:

Java

C/C++

C#

Python

Ruby

 

Some of the major front-end (client-side) web languages* are:

Javascript (no relation to Java)

HTML

CSS

*Note, html and css are generally not considered languages but are useful to know all the same.

 

Some of the major back-end (server-side) web languages are:

Java

PHP

Python

Ruby

SQL (for databases)

 

Some of the major web frameworks are (and there are way too many to list):

Struts

Spring

JQuery

Dojo

CakePHP

Ruby on Rails

(the list goes on…..)

 

A lot of the above can be rather complex and frustrating for someone in the software industry let alone someone new to programming. To combat this it is best to start with a single language and learn not only the language syntax but general programming concepts. Just learning a language enables one to write code that functions correctly, but learning concepts enables one to design and engineer.

Concepts such as type-safety, flow of control, parallelism, object-oriented design, and encapsulation are all invaluable. What’s even cooler is these concepts tend to be similar across most programming languages so once they are mastered in one language other languages tend to seem less intimidating. Any book that focuses on teaching a particular language will usually provide some chapters on basic concepts but whole books have been written on the subject.

 

Note, there is no one best programming language or framework – they are all tools that fit a need – but that doesn’t stop developers from having their favorites. For some one starting out the best language is one that is syntax-friendly and provides quick visual results so motivation stays high. Because of this the Javascript/HTML/CSS trio is a fairly common introduction to programming as are Python

(http://www.python.org/) and Java

(http://www.oracle.com/technetwork/java/javase/downloads/index.html) – the latter of which is more advanced. Also kits like Lego MindStorm, Arduino and Rasberry Pi are awesome for experiencing the joy of writing software that tangibly controls a piece of hardware.

Programming for the android platform (cellphones and tablets) can also provide visual results with relatively low time spent depending on what the software is expected to do. Android has the advantage of being ubiquitous.

 

Below are some resources that have kid-friendly programming in mind or are just plain good.

 

http://blogs.kqed.org/mindshift/2011/05/5-tools-to-introduce-programming-to-kids/

http://www.amazon.com/gp/product/1593274076/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1593274076&linkCode=as2&tag=boiboi0b-20

http://mindstorms.lego.com/en-us/Default.aspx

 

Android

http://developer.android.com/training/index.html

http://developer.android.com/sdk/index.html

 

 

Arduino

http://www.arduino.cc/

http://arduino.cc/en/Tutorial/HomePage

 

Raspberry Pi

http://www.raspberrypi.org/

http://www.raspberrypi-tutorials.co.uk/

 

Examples

http://www.java2s.com/

http://www.w3schools.com/

 

Videos that help children learn programming seem to be scarce on YouTube, but Stanford was nice enough to release their introductory courses on programming (they use Java – http://www.youtube.com/view_play_list?p=84A56BC7F4A1F852). Just in general Khan Academy (http://www.khanacademy.org) is a pretty good resource for math and they happen to have a few videos on programming (https://www.khanacademy.org/cs/tutorials/programming-basics).

Computer ed/coding sources for kids

Below is a message from a friend of mind..

 

Check out the MIT program, Scratch.  Also look for Lego Mindstorm – expensive, but good for physical/mental aspects of coding

http://blogs.kqed.org/mindshift/2011/05/5-tools-to-introduce-programming-to-kids/

This the link for a recommended book about Python – great for kids – like haiku, so many ways to express your self using a basic format.

http://www.amazon.com/gp/product/1593274076/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1593274076&linkCode=as2&tag=boiboi0b-20

http://www.arduino.cc/

http://arduino.cc/en/Tutorial/HomePag

Seasons

Life is full of seasons.  Some are wonderful. Others are downright awful. Regardless, they exist, and you must address them.

Today, I made the announcement to my local homeschooling cooperative, Excelsior, that my family and I would not be returning to classes in the fall. Now, while my decision is not one that rocked Wall Street or made CNN headline news, it’s a decision that was big for me and required much reflection and meditation before making my announcement to members and friends. You see, Excelsior was started by 2 of my girlfriends and me almost 4 years ago.  We have since that time spent many hours and much energy designing classes, planning curricula, researching materials, and so forth.  We started something from nothing, and it turned into a wonderful and valuable experience for my family.  That being said, everything has a season.  Sometimes, you just know in your gut or in your spirit when a change must be made.  It must be made because it is the right next thing to do, even if the path that you are on is comfortable and familiar and, for the most part, working.

What lies ahead in our future is yet to be determined.  I am clearing the calendar to see what happens and unfolds, and I do believe this year holds big changes for us. It is sometimes necessary to change in order to make room for bigger change.

These pictures that follow are some from when we first started Excelsior-sweet memories:)

OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA OLYMPUS DIGITAL CAMERA

If computers are going to rule the world, then my kids need to know how to rule the computers

Yes, this is where my brain is today..

http://www.squidoo.com/teach-computer-programming

http://www.motherboardbooks.com/about-me/