|
|
#1 |
|
How did you start learning how to program?
I'm in a weird situation. I have took a few programming classes at my university a few years back and loved it. But life happened and I ended up stepping away from it for years. Now I have an idea for an application and I really want to be able to implement it in the form of an mac application. But I have no idea where to start.
Even though I have knowledge of basic programming principles, I have no idea what to do when it comes to REAL WORLD PROGRAMMING. I learned html & css by reverse engineering websites that I found interesting. It would be cool if I could learn the same way with programming...
__________________
PowerMac G4 | iMac 27" | Macbook Pro | iPad | iPhone | Thunderbolt Display --- My Site | Facebook | My Twitter Last edited by tekboi; Mar 16, 2013 at 11:00 PM. Reason: meant to say MAC instead of iOS |
|
|
|
0
|
|
|
#2 |
|
First off, you're in the Mac Programming section of these forums - there's a separate iOS programming section of these forums.
Second off, to learn iOS programming, I suggest you first learn C, then dive into Stanford's free CS193P course (it's on iTunes U) which covers iOS programming. I find Learn C the Hard Way is a quick and to the point (and free) eBook that'll teach you just what you need on C: http://c.learncodethehardway.org/book/
__________________
Battery Status - On the Mac App Store
The only app that'll estimate when your wireless devices will need their batteries changed. Like it on Facebook! |
|
|
|
1
|
|
|
#3 |
|
There are lots of good tutorials on iTunes U, including entire programming course lectures from Stanford and others. It can also be worthwhile to buy a good intro book that's in tutorial format and just go through the whole thing. I liked an old version of this book, personally (although for clarification, I had been programming for ~20 years when I played around with iOS development): http://www.apress.com/9781430245124
__________________
15" MacBook Pro Retina (2.6GHz/512GB/16GB) / 27" Thunderbolt Display / iPad 3 / iPhone 5 / G4 Mac Mini / Apple TV 3 |
|
|
|
0
|
|
|
#4 |
|
A lot of people started out with an Apple II and a bunch of magazine articles on Basic, until they could code up or copy and mod a simple game.
This was tons easier than learning C or Objective C, so succeeded with a vast number of kids, many who later moved on to more professional software engineering. |
|
|
|
1
|
|
|
#5 | |
|
Quote:
__________________
15" MacBook Pro Retina (2.6GHz/512GB/16GB) / 27" Thunderbolt Display / iPad 3 / iPhone 5 / G4 Mac Mini / Apple TV 3 |
||
|
|
0
|
|
|
#6 | |
|
Quote:
__________________
iPhone • iPad • MacBook Pro |
||
|
|
0
|
|
|
#7 |
|
I started out on a TI-99/4A back in 1981. The first program I wrote came from a programming magazine that I cannot remember the name. It had a section each month with about 100 lines of code to make your computer do all sorts of things like bounce little squares around. I wrote my first 'real' program in GW Basic; about 1500 lines; all saved to a cassette tape; called Agent X. I showed everyone.
![]() Now I know and write code in multiple languages daily, today I wrote some Ruby, PHP, javascript, ObjectiveC and Java ( also did some HTML5 and CSS work ). I'm all about jumping right in and forgetting about theory, I've had 8 years of theory, just give me syntax examples, I'll figure the rest out, Haha. I read several books on iOS. The one that got things to stick was Big Nerd Ranch iOS Programming and Learning Coco 2D. I use Blender to build the environments and character models. A long time ago ( 10 years ) I used Maya but at that time found it too combersome and blender too immature. I've only just started working on my on 3D stuff ( about 2 years ) and haven't had the need for Maya power ( or price ) yet.
__________________
TI-99/4A, tape cassette, 12" B&W Zenith |
|
|
|
0
|
|
|
#8 | |
|
Quote:
__________________
OS X 10.9 and iOS 7 delayed. Haswell Q3/Q4 2013. -------------------- “Only the dead have seen the end of the war.” -- Plato --
|
||
|
|
0
|
|
|
#9 |
|
Why assembly? That seems like it would introduce some major headaches for you whenever Apple releases new hardware. (I don't really know - I've only ever written assembly for class assignments... I was under the impression that assembly code has to be modified for each ISA... which I'm under the impression changes with each new CPU.)
__________________
Battery Status - On the Mac App Store
The only app that'll estimate when your wireless devices will need their batteries changed. Like it on Facebook! |
|
|
|
0
|
|
|
#10 | |
|
Video-/Audio-Codecs are impossible without assembly code (see H.264).
Quote:
__________________
OS X 10.9 and iOS 7 delayed. Haswell Q3/Q4 2013. -------------------- “Only the dead have seen the end of the war.” -- Plato --
Last edited by Mr. Retrofire; Mar 18, 2013 at 11:53 PM. |
||
|
|
0
|
|
|
#11 |
|
How will you guys suggest someone with basic knowledge of html and css jump into programming ? I know html is not really programming
Some people suggest me to start with assembly but most always say to pickup Java or C++ Any recommendations are welcome in regards of where and how to start learning
|
|
|
|
0
|
|
|
#12 | |
|
Quote:
I'd personally say to either start with a language you actually are interested in using for something (at least a "for fun" project), and if you're not sure, try Java, C#, Objective-C or C++.
__________________
15" MacBook Pro Retina (2.6GHz/512GB/16GB) / 27" Thunderbolt Display / iPad 3 / iPhone 5 / G4 Mac Mini / Apple TV 3 |
||
|
|
0
|
|
|
#13 | |
|
Quote:
The need is not rare. Note the top revenue game apps that can do 60 fps complex rendering plus real-time environmental audio. Versus the percentage of simple apps that crash even in the humongous vast memory available on the same iPhone 3GS. Now what happens when some company intros a hot-selling wristwatch sized environment? I'd say an Arduino is a great environment on which to learn to code. |
||
|
|
0
|
|
|
#14 | |
|
Quote:
__________________
15" MacBook Pro Retina (2.6GHz/512GB/16GB) / 27" Thunderbolt Display / iPad 3 / iPhone 5 / G4 Mac Mini / Apple TV 3 |
||
|
|
0
|
|
|
#15 | |
|
Quote:
In some ways, any language will work for any purpose, it's just a question of difficulty. Avoiding pointless difficulty is part of the reason for choosing a specific language. Programming can be like carpentry or woodworking. There are many different things one can build, some with great artistry and others strictly utilitarian. There's also a question of scale: the tools for making model boats or miniature furniture are not the same as those for full-size boats or furniture. For example, "What kind of saw should I get?": http://en.wikipedia.org/wiki/Saw#Types_of_saws |
||
|
|
0
|
|
|
#16 | |
|
Quote:
start as a hobbie and who knows, my bread and butter is networking.But my main focus will be making programs for personal use and nothing mobile related. Ps. Excuse the poor english
|
||
|
|
0
|
|
|
#17 | |
|
Quote:
An easy one to start with on OS X is Python. It comes pre-installed, there are lots of tutorials on the internet, it has capable text handling, and you can develop using lots of different tools (including programming text editors like BBEdit or Smultron). Another possibility is JavaScript. It's pervasive, also has lots of tutorials, and has a strong tie-in with HTML and CSS. Unless you already know it, in which case you already know a programming language. You can learn that one better, or you can apply your knowledge to another one. It's probably less important which one you pick, and more important that you stick with it. Becoming good at something takes practice, and you won't be writing great programs in just a few days. Or even a few weeks. There's a lot of individual variation in how fast one acquires the skills, and it's best to be systematic and work at your own speed. |
||
|
|
0
|
|
|
#18 | |
|
Quote:
For example, write a simple web page that pops up a dialog and asks for your name, and then writes "Hello, Name!" on the web page title.
__________________
. |
||
|
|
0
|
|
|
#19 | ||
|
Quote:
---------- Quote:
|
|||
|
|
0
|
|
|
#20 | |
|
Quote:
You can learn these skills in one language (such as Python), and when it's time to learn another language (such as C++) all you need to learn are the tricks to the new language itself. Think of it like learning to become a writer using Microsoft Word. There are really two sets of skills you are learning: one, how to work with Microsoft Word itself, (where is the button to create a table? where do you find out the word count?), and the other is storytelling skills like developing a plot and characters and breaking down dialogue and whatever. If you switch to Apple Pages, you'll need to learn a new set of layout tools, but your understanding of how to write stories still applies. I started programming as a kid at home using Apple ][ BASIC, then in high school using QuickBasic and Pascal, then in university using Java, C, C++, and x86 assembler, and now at work I use C, C++, and Python.
__________________
. |
||
|
|
0
|
|
|
#21 | |
|
Quote:
|
||
|
|
0
|
|
|
#22 | |
|
Quote:
I see no great obstacle to learning other languages after learning Python. Yes, it's different, but so is every other language. Even languages that can be traced through a definite lineage, like C to C++ to Java will be different in important ways. Take each one on its own terms, reuse principles where they apply, and learn how to learn by lesson and by discovery (i.e. reading documentation and exploring by writing programs, as distinct from reading tutorials or other overt instructions). Writing programs to learn how something really works is a skill you will always use. If you're dithering because you hope that somehow someone will give an exact answer that is certain to work for you, you're mistaken. No one can predict how someone else learns things, nor where the difficulties will occur. That's why I said that the choice of language was less important than choosing one and sticking with it. One only really learns how to program by actually writing (and reading) programs, and debugging them to make them actually work. |
||
|
|
0
|
|
|
#23 | |
|
Quote:
The examples are in Java, but are applicable to any object oriented language (I've never been a Java developer and found this book useful years ago), and a lot of them are useful for less structured languages as well. Like most technical books, there are others published with similar names/formats about various topics. I've never seen any of the others, but they all look well rated on Amazon.
__________________
15" MacBook Pro Retina (2.6GHz/512GB/16GB) / 27" Thunderbolt Display / iPad 3 / iPhone 5 / G4 Mac Mini / Apple TV 3 |
||
|
|
0
|
|
|
#24 | |
|
Quote:
While this book is a bit dated, I found it fairly decent. http://shop.oreilly.com/product/9780596805791.do The Android equivalent was updated: http://shop.oreilly.com/product/0636920022886.do B
__________________
MBA (13" 1.7 GHz 128GB), UMBP (15" SD 2.8 GHz), UMB (13" 2.4 GHz), iMac (17" Yonah), 32GB iPad 3 WiFi+LTE, 64 GB iPad WiFi, 32 GB iPhone 5, Airport Extreme |
||
|
|
0
|
|
|
#25 |
|
Thanks for the responds guys !
and sorry to the op for taking hes thread.Hopefully in the future i can comeback here and share my experiences. |
|
|
|
0
|
![]() |
|
«
Previous Thread
|
Next Thread
»
| Thread Tools | Search this Thread |
| Display Modes | |
|
|
All times are GMT -5. The time now is 01:58 PM.








Linear Mode
