Absolutely no reason you need to learn Objective C to program iOS. Almost all new tutorials that are coming out now are in Swift, which is a fantastic language. You don't need an iPhone, but if you do want a device, an iPad mini is pretty cheap. All you need at the start is a Mac mini or similar. If you are trying to get a job, Swift is much newer than Objective C therefore there is less competition. As it is way better, companies will migrate to Swift pretty quickly creating demand.
Peter Webb
Posts
-
What do y'all think? -
Can anyone help me solve this project?I think almost everybody reading a discussion board on Objective-C would be able to "solve this project". Do you have any other questions?
-
Mac Mini: Development Environment DiscussionI currently use a Mac Mini (core i7) for iOS development (bought it 12 months ago, so yours may be a later model). Works great, I am developing a pretty serious app on it. XCode is free, as good as VS (almost). It only recompiles modules you actually change, so my app with dozens of modules typically recompiles, builds, and transfers to the emulator in a couple of seconds. Your only additional costs will be a keyboard, mouse, monitor and a $100 per year iOS developer license. If you have never used a Mac before (I hadn't), you will be impressed. Figured I needed to do backups. Rather than buy a $100 Mac portable drive, a guy in my local electronics shop said I could buy a normal (Windows formatted) portable hard disk and the Mac would automatically reformat it. Plugged it in, Mac asked me if I wanted to reformat (yes), then asked me if I would like to use it as a backup disk (yes)and it put in place a periodic full and incremental backup service. I knew (know) nothing about Macs, plugged in the wrong kind of drive, and literally two clicks later it was a functioning automated backup. After a year of iOS development I still know nothing about Macs, you don't need to know anything about them to use them. I couldn't set up an RDC from Windows into the Mac, but MS provide an excellent and free RDP client for the Mac OS (OSX?) and I RDP from Mac into my PC - this better suits how I work, as I spend most of my time in Xcode but want to periodically check my email or change songs. The only apps I have installed are XCode, the MS RDP client, and Chrome. I spent years treating Macs as toys, and beneath the dignity of real developers. Its a great environment, and the mini is a great machine. Highly recommended.
-
How old were you when you first wrote a line of code ?It was 1969 and I was 13. The language was called "Minitran" and it was Fortran without format statements. A bent paperclip was used to punch out little rectangles on standard 80 column IBM cards which has been pre-perforated. The turn around time was 1 week (the schoolteacher had to drive to a University, drop it off, and return a few days later to pick up the output). If there was a compile time error, it stopped compiling on the first error, so you just got "illegal statement - line 7" on the printout. That is a very, very slow way to learn to program.
-
Microsoft Is Dying!0!0110!As a recreational MS developer for over 20 years, I have always found MS incredibly helpful to developers. Almost all their development systems/environments are free. If you ask questions in their blogs and newsgroups, you will usually get a good answer. As a recreational and semi-professional Android programmer, Android sucks as an development ecosystem and environment, and Google doesn't subsidise staff to assist developers (white papers, code samples, tutorials, newsgroups) the same way as MS has for its products. The Java/Eclipse/Android development environment is far clunkier and more primitive than C#/Visual Studio/Windows. In a typical Windows app, you might spend 20% of your time fiddling around laying out your UI. On a phone, where it is one different window size for everybody, it can take 50% of your time. Fancy spending half your time looking at how your app looks on 20 different screen sizes and resolutions? Welcome to Android.
-
Worst Exception!!The temptation is to wrap my entire runnable in something like: Try {// running my program} Catch (Throwable anything) { // act like nothing bad happened and restart somewhere nice } But my head tells me that handling every possible throwable in my code is probably not a great idea.
-
Worst Exception!!Up until yesterday "Out of Memory" was my worst exception. By coincidence, today I found out was not actually an exception, but an error condition in Java, which explains why I wasn't catching it. So now its been promoted to worst throwable. And I hate pretty much everything you can throw.
-
My first language and interesting early software projects.Wrote an "operating system" for a 6502 to allow its use to receive 8 modem channels simultaneously and buffer and write the data out to a 9 track tape drive. Multi-tasking, but no disk drivers. It fit onto a 4K ROM. The devices sending it information were handheld computers used for stock control, running a RCA 1802 8 bit CMOS CPU (same as on the Galileo space probe). It ran with a 1 Megahertz clock, the fastest instruction was a NOP which took 8 clock cycles, so 0.1 MHz in reality. The devices were limited to 1200 baud because they lacked a dedicated serial chip so I had to raise and lower a CPU IO line in software and use loop timing to generate the 8 bit characters for RS-232 one bit at a time. 1200 baud was as fast as I could do it in software. Also 4K of ROM for the whole thing. All this was 1979.