By Blurry_81, 11 April, 2014
Forum
App Development and Programming
Hello,
I have several questions regarding programming on a Mac. I am completely blind and completely new to programming and app development, no experience what-so-ever. I have seen Objective C come up a few times and am wondering if it is the best language to learn, or start with? I am also wondering where someone would take courses or education in computer programming? The school that I am taking courses through right now has been trying to figure out how to make their computer science course accessible to me with no such luck so far. We have found that Python is not voiceover accessible and so I am also wondering what programs blind users use to code? Is it just X-code? Again completely new to the subject and not even sure what questions I should be asking. Any information would be greatly appreciated, you can also email me at
[email protected]
if that is easier.
Thank you so much,
Comments
Some Thoughts
Hello, Yes, Objective-C is the place to start. I also suggest you look at the Xcode tutorials on this site so you can get an idea of how it works. Google is how I learned objective-C, and for Xcode, there is the [email protected] email list.
Python is very accessible. The only difficulty is knowing indentation, but even that is not a big deal once you are comfortable with the language. That said, if you want to one day submit apps to the App Store, concentrate on Objective-C. The two languages are very different, and if you are going to learn one, make it Objective-C. Besides, once you have that one down, learning Python will be a snap.
So I basically just teach
That's What I Did
I taught myself Javascript in middle and high school, plus messed around in a few other languages, so that the CS courses in college were mostly pretty easy. I taught myself Objective-C as well, using mostly Google. There are tons of questions on Stack Overflow about ObjC topics. Apple has good documentation, Big Nerd Ranch has articles, people have written books on it… Basically, once you know the core concepts of programming (methods, classes, flow control, and imports) then learning a new language is pretty easy. Languages nowadays tend to be different ways of doing the same things, so once you have the basic, underlying concepts down, then a language is nothing more than a different way of saying the same thing.
Hello, First of all if you
Thanks so much
Hard to Say
It's hard to say what course to look for. I just got a degree in computer science, so I got the full set of classes. If you don't want to do that, though, any intro to programming course will be a good place to start. As I said, once you understand the underlying concepts, languages get very easy to learn. If you can't start with Objective-C, learn Java, C++, Python, or anything object-oriented. If mac programming is the goal, a scripting language like Python is not quite as good to learn since it is loosely typed, but it will do week enough at teaching you flow control, inheritance, classes, subs classing, and so forth.
the CS course
I'm not able to suggest
I'm not able to suggest specific schools or courses. Generally, at least in my limited experience, a professor will stick to a language s/he likes. Sometimes, the course is specifically to learn a language, or several. For instance, my intro CS classes used Java, but I later took a class that had us work with a bunch of different languages just to see how they all worked. Every school or online degree will be different.
Some will want you to use Windows because they will be working with C#, VB, or other Microsoft-specific languages. Python is a good cross-platform choice, but it is not the only one. Objective-C is not cross-platform (well, technically it is, but it isn't really used outside of the Mac). Again, though, anything that teaches the concepts 8behind* programming is good, and you can work out how to do those concepts in Objective-C on your own or with help from, say, a one-on-one project with a professor.
what computer did you use?
A PC
I used a PC, and didn't start on the Mac until the year I graduated. However, I feel confident I could have done much of the work on the Mac, and there's VMWare or Bootcamp if you absolutely need Windows. Also, don't forget about the NVDA screen reader for Windows; it's free, and open source. It is what I use on Wiindows, and is worth a look if you're tired of paying every year just to update Jaws or Window-Eyes.
Python
Idle isn't a great choice…
Instead of Idle, try straight Text Edit. I haven't tried Idle on the Mac, but it isn't really accessible on Windows so I doubt the Mac version is better. What I'd do is write and edit your scripts in Text Edit and run them in Terminal.
Python app
Idle isn't a great choice…
Idle is an IDE (integrated development environment) for Python. The nice thing about Python is that it needs to compiling like other languages, so you can just type out your Python script and run it. So no, Idle is not necessary at all.
okay