# \[OT\] Programming

**URL:** <https://forum.djtechtools.com/t/ot-programming/20928>\
**Category:** General Discussion\
**Created:** [March 9, 2011, 10:44pm UTC](https://forum.djtechtools.com/t/ot-programming/20928 "2011-03-09T22:44:53Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![MonkeyFish](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.djtechtools.com/monkeyfish/32/13131_2.png) [@MonkeyFish](https://forum.djtechtools.com/u/MonkeyFish)\
**Post date:** [March 9, 2011, 10:44pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/1 "2011-03-09T22:44:53Z")

</div>

**[OT] Programming**

I’m interested in starting to learn to programme, I’ll probably go with some iTunes U to start with but i ultimately maybe want to become proficient with python for max and modul8.

Does anyone know any forums that are good for programming?

Also can anyone recommend any books that lay down the basics of computing? Theres too much jargon, i can tell a CPU from RAM but i would quite like to get more of a background knowledge into computing and when i try and google this i get tuts on how to print emails :@

---

<div class="post-metadata">

**Author:** ![Quenepas](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.djtechtools.com/quenepas/32/14443_2.png) [@Quenepas](https://forum.djtechtools.com/u/Quenepas)\
**Post date:** [March 9, 2011, 11:05pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/2 "2011-03-09T23:05:50Z")

</div>

> [@MonkeyFish](#):
>
> I’m interested in starting to learn to programme, I’ll probably go with some iTunes U to start with but i ultimately maybe want to become proficient with python for max and modul8.
> 
> Does anyone know any forums that are good for programming?
> 
> Also can anyone recommend any books that lay down the basics of computing? Theres too much jargon, i can tell a CPU from RAM but i would quite like to get more of a background knowledge into computing and when i try and google this i get tuts on how to print emails :@

Im on the same boat and started with Itunes U just like you. My goal is to create some app, even for free, to put up in Itunes to better my resume. So I started to read a book about Objective C: “Cocoa Programming for Mac OSX 3rd Edition” and so far the author does a good job explaining the concepts. One point they say is that while it is possible to develop Cocoa with Python and ruby, they dont use that technique on the book.

That said, IRL friends tell me to start with C+ or C# since thats the foundation to Cocoa plus for the job market those are more requested than Cocoa. Even then what I read is that no matter what language you end up learning, the basics apply to all. I have put a short term goal on this and is to develop the stoplight program which is what my local university asks to develop for n00bs. The stoplight program is a drawing of a stoplight and 3 boxes with the 3 colors. You click red and red lights up so on so forth.

Dont be discouraged about India and China beign proficient and getting all the jobs. It’s a preparation needed for the job market and a great skill to have. Feel free to PM me any finds you have on the subject and maybe we could give support to one another on the matter.

---

<div class="post-metadata">

**Author:** ![tombruton69](https://avatars.discourse-cdn.com/v4/letter/t/f14d63/32.png) [@tombruton69](https://forum.djtechtools.com/u/tombruton69)\
**Post date:** [March 9, 2011, 11:26pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/3 "2011-03-09T23:26:12Z")

</div>

If I was you I would start with JavaScript (not the same as java). This language is quite similar to C and C++ but very forgiving and will let you miss some things out and take short cuts but still work.

You need to get the basic’s down. It starts off pretty easy just just need to learn about variables and using a few basic functions. then move onto loops. then objects.

Some would argue that its better to learn C first the only issue with this is you will crash ur comp every 10 mins in the early days

---

<div class="post-metadata">

**Author:** ![djstormeagle](https://avatars.discourse-cdn.com/v4/letter/d/e495f1/32.png) [@djstormeagle](https://forum.djtechtools.com/u/djstormeagle)\
**Post date:** [March 9, 2011, 11:40pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/4 "2011-03-09T23:40:05Z")

</div>

Check out the MIT Open Course Ware for 6.00, specifically the Video Lectures. While I haven’t taken this class, I know many students take it to learn programming. I also think you might find the first chapter or two of the 6.01 Course Notes helpful - we do all of our programming in Python for this class.

A text that I have used that I think does a good job of explaining fundamental programming concepts is “C++ For Scientists and Engineers” by Gary Bronson. You might find this helpful as well.

6.00 OCW:

> **[Introduction to Computer Science and Programming | Electrical Engineering and...](https://ocw.mit.edu/courses/6-00-introduction-to-computer-science-and-programming-fall-2008/)**
>
> 6.00 Intro to CS and Programming has been retired from OCW. You can access the archived course on \[DSpace – MIT’s digital repository\](https://dspace.mit.edu/handle/1721.1/150580). Please see the list of \[introductory programming...

6.01 Course Notes:  
[http://mit.edu/6.01/mercurial/spring11/www/handouts/readings.pdf](http://mit.edu/6.01/mercurial/spring11/www/handouts/readings.pdf)

My final 2 cents:  
Learn to program in whatever language you want. Once you understand the concepts, it is fairly easy to apply what you know to other languages. I personally think either C++ or Python would be a great choice for a beginner.

---

<div class="post-metadata">

**Author:** ![Dj\_Dynasty](https://avatars.discourse-cdn.com/v4/letter/d/dfb087/32.png) [@Dj\_Dynasty](https://forum.djtechtools.com/u/Dj_Dynasty)\
**Post date:** [March 10, 2011, 1:10am UTC](https://forum.djtechtools.com/t/ot-programming/20928/5 "2011-03-10T01:10:33Z")

</div>

I’ve found that youtube is very usefull… I’ve actually started writing a program although i’ve dropped that task due to a huge amount of work coming in… give me a shout and I’ll be happy to help

---

<div class="post-metadata">

**Author:** ![xtianw](https://avatars.discourse-cdn.com/v4/letter/x/e19b73/32.png) [@xtianw](https://forum.djtechtools.com/u/xtianw)\
**Post date:** [March 10, 2011, 10:35am UTC](https://forum.djtechtools.com/t/ot-programming/20928/6 "2011-03-10T10:35:59Z")

</div>

Enroll in Introduction to Programming at Cypress College (cypresscollege.edu).

Professor McKnights curriculum is the best intro to programming ive seen anywhere.

hes also custom written tools that REALLY help you learn the actual aspects of design (learning to right GOOD code) as well as a good primer on syntax. The course covers visual C# as well as Visual Basic. So you get a bit of both the easy as well as the c structure to give you a good head start.

you can take the course online. you’ll have to buy one book but Professor McKinight writes all his own textbooks too, so theyre very course specific. This guys been teaching programming for over 20 years. One of the best educators Iv’e ever run across in my life.

---

<div class="post-metadata">

**Author:** ![soundinmotiondj](https://avatars.discourse-cdn.com/v4/letter/s/a698b9/32.png) [@soundinmotiondj](https://forum.djtechtools.com/u/soundinmotiondj)\
**Post date:** [March 10, 2011, 1:50pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/7 "2011-03-10T13:50:12Z")

</div>

> [@MonkeyFish](#):
>
> i ultimately maybe want to become proficient with python for max and modul8.
> 
> Does anyone know any forums that are good for programming?

Free book download…or you can purchase the dead tree version. This is a good introduction to programming in general, and to python in particular.

> **[Think Python, first edition – Green Tea Press](https://greenteapress.com/wp/think-python/)**

I also like Wesley Chun’s Core Python Programming. Wesely is a good guy, and writes in a clear, easy to follow style.

[ame=“[Amazon.com](http://www.amazon.com/Core-Python-Programming-Wesley-Chun/dp/0132269937)”][Amazon.com](http://Amazon.com): Core Python Programming (2nd Edition) (9780132269933): Wesley Chun: Books@@AMEPARAM@@[http://ecx.images-amazon.com/images/I/51qvS8cyLCL.@@AMEPARAM@@51qvS8cyLCL[/ame]](http://ecx.images-amazon.com/images/I/51qvS8cyLCL.@@AMEPARAM@@51qvS8cyLCL%5B/ame%5D)

When learning a language, I recommend having a couple specific projects in mind to use as a learning tool. In this case, write something that will work on your music collection (or maybe a backup of your music collection). Here is a project outline I gave someone else a couple of years ago. Maybe this will give you some ideas about useful things you can do.

> [@](#):
>
> If you have a mp3 (or FLAC) based music collection:
> 
> Write a file backup or sync program. Compare the contents of two directories and only backup files that are new or different.
> 
> Write a GUI that offers all the options to a user (source and destination directories, pattern to match files and/or dirs, copy option flags, etc). Allow some sets of options to be canned and run as a macro.
> 
> Extend the comparison to include ID3 tags. Use that to sync your music collection across multiple devices. Add flags to copy all files or new(er) files, to copy empty directories or not, to remove files in the destination that are not in the source (or not).
> 
> Extend the tool to ignore (or fix) tags that differ only by whitespace or capitalization issues.
> 
> Extend the tool again to find duplicate music files by comparing ID3 tags and filenames - allow for matches that ignore “A”, “The”, etc (e.g. “The Beatles” and “Beatles” are the same band).
> 
> Extend the tool again to fetch missing ID3 tags from freedb (or amazon, or somewhere else) and update the songs. Have a way to reconcile the tags between different devices by only updating the tags, not copying the whole file.

---

<div class="post-metadata">

**Author:** ![Sherlock\_Ohms](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.djtechtools.com/sherlock_ohms/32/13704_2.png) [@Sherlock\_Ohms](https://forum.djtechtools.com/u/Sherlock_Ohms)\
**Post date:** [March 10, 2011, 1:57pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/8 "2011-03-10T13:57:57Z")

</div>

> [@tombruton69](#):
>
> If I was you I would start with JavaScript (not the same as java). This language is quite similar to C and C++ but very forgiving and will let you miss some things out and take short cuts but still work.

TBH, I’m not sure that’s a good idea - if you start off sloppy, then you get used to not declaring ior initialising variables, for the same reason avoid Visual Basic.

> [@tombruton69](#):
>
> Some would argue that its better to learn C first the only issue with this is you will crash ur comp every 10 mins in the early days

Only really true if you raw write to the kernel, or do excessive buggering about with pointers. Which you wouldn’t in the early days.

I started out with BASIC (which I wouldn’t recommend as it can lead to bad habits - use of GOTO), then properly learned to program in Fortran, then Cm the PROLOG and god knows what else in the end. the noe that stood me in best stead was learning C properly, then learning a decent OO language - probably Java.

---

<div class="post-metadata">

**Author:** ![V-Hoff](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.djtechtools.com/v-hoff/32/11759_2.png) [@V-Hoff](https://forum.djtechtools.com/u/V-Hoff)\
**Post date:** [March 10, 2011, 5:14pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/9 "2011-03-10T17:14:42Z")

</div>

I’ve learned programming in Pascal then latter Delphi at university…  
My first job was as PL/SQL Programmer. PLSQL is a language that is used inside Oracle Database to create stored packages, procedures, functions, etc…  
Now I’m a Performance Analyst and Oracle DBA. I work mainly identifying performance issues in general applications and databases.

As you see, the language that you start can define the path that you will choose in the future, so it’s wise to take some time, look at the place in the market that you want to be in 3 years, talk to professionals that are alredy SENIOR (5 years) in this place and then make your decision.

I wish I had a chance to know java and object oriented programming in my first years of work, now it’s hard for me to go back and learn all again…

Just a few cents 😃

---

<div class="post-metadata">

**Author:** ![completej](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.djtechtools.com/completej/32/12502_2.png) [@completej](https://forum.djtechtools.com/u/completej)\
**Post date:** [March 10, 2011, 6:35pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/10 "2011-03-10T18:35:31Z")

</div>

If you want something to pad your resume, start learning .NET now - very easy to get contracting jobs nowadays with good .NET skills.

SQL / Oracle is always good, and gives you a bit of programming knowledge when doing things like stored procedures.

Once you know .NET and T-SQL, you can do some pretty crazy stuff with a simple UI. I’ve found comfort in Sencha (formally ExtJS - like Jquery but imo more powerful of a javascript framework) + classic ASP + SQL Enterprise 2008.

---

<div class="post-metadata">

**Author:** ![tombruton69](https://avatars.discourse-cdn.com/v4/letter/t/f14d63/32.png) [@tombruton69](https://forum.djtechtools.com/u/tombruton69)\
**Post date:** [March 10, 2011, 6:43pm UTC](https://forum.djtechtools.com/t/ot-programming/20928/11 "2011-03-10T18:43:39Z")

</div>

I think the best advice that been given is thinking what you want to do.

The way you are taught a promming language is often very differnt to how u actually program it when you know wat ur doing. I know saying that is a little odd, however for alot of people it is very true
