General Discussion
Related: Editorials & Other Articles, Issue Forums, Alliance Forums, Region ForumsApple Launches Swift, A New Programming Language For Writing iOS And OS X Apps
In related news, job ads on Dice.com are asking for developers with 5 years of Swift programming.
onehandle
(51,122 posts)And no unemployed need apply.
Xithras
(16,191 posts)I've been writing software for decades, and know more than two dozen different languages. One of the most well-proven truisms in programming states that "New languages are crap. Always."
Swift may develop into something usable in a couple of years, but no company in computing history has ever written a language in a closed environment that was free of security holes and stability bugs. Typically, no matter how well crafted or well intentioned, or how skilled the writers are, new programming languages tend to turn into security and stability nightmares. There is simply no way that any company can anticipate all the ways that programmers will try to use the language, or all the ways that hackers will try to exploit it. Good ones survive the "crap" phase and evolve into durable languages that stick around for a while. Hopefully Swift will manage to do that, because Objective C is a pretty dated language. It may have been shiny back when Jobs ran Next, but Apple really could have done better (fusing C and Smalltalk was never a good idea, IMHO).
onehandle
(51,122 posts)Xithras
(16,191 posts)That apple has nothing to do with my orange.
New languages are always a problem. Never in computing history has there been an exception to that rule. The fact that a new language can be coded inline with an existing language technically introduces even MORE potential attack vectors and failure points. To cite merely one example among many: way back when MS introduced C#, one of its selling points was that it ran "alongside" existing and proven VB code. While nice, the reality of programming is that the security and reliability of one language does not grant any security or reliability to the other language...even when they're designed to run in tandem with each other. Most developers will tell you that the .Net 1.1 version of C# was crap. It has matured into a reliable, secure and well crafted language over the years, but like all languages it went through its crap stage. Just as Swift will.
FWIW, I've been a member of the Mac DP and iOS DP for many years, and work for a company in the iOS DEP. I've written over a dozen commercial programs for both the Mac and iOS mobile devices. My opinion on this doesn't come from any anti-Apple stance, but stems from experience gained from 22 years of programming professionally (I can tack on even more years if you want to add basement hacking to my experience). New languages are crap. Always. That opinion isn't anti-anything. It's just software engineering reality
In a way, new programming languages are a lot like kittens. They are fun, and usually cute, and they're always learning new tricks, but you can't let them go outside because they don't know how to defend themselves yet and haven't learned to stay away from dangerous things, they're easy for the bad guys to make off with, and they'll sh*t all over your carpet until they grow up a little and figure out how to handle unexpected outputs appropriately.
Yavin4
(35,423 posts)that always want 5 years of experience in something even if that something hasn't been around for 5 years.
Xithras
(16,191 posts)It generally means that either the HR department is doing all of the hiring and is clueless (which generally means low-quality co-workers), or it means that the boss has unreasonable expectations or no understanding of the realities of programming. A bad job ad can often tell you a lot about a company, if you know what to look for.
Like the boss I had who once stated, "I don't know why it takes you a day to write two pages of code. Programming is just typing, and I could do that in third grade. It's not like this stuff is hard." I was in the middle of writing an algorithm to simultaneously LZW compress, encrypt, and packetize a real-time video stream for his cheesy startup app. I should have known from the ad, which wanted "5 years of Apple-C experience", that the job wouldn't be worth the effort, and my clueless idiot detector should have warned me away. I started looking for a new job the next day, and quit about a week later.
Yavin4
(35,423 posts)Like most people aren't worth being in a relationship with.
hunter
(38,304 posts)Yes, my tinfoil hat is often on too tight, but it wouldn't surprise me if these languages were developed to hold Microsoft's and Apple's in-house programmers captive and force salaries down, while simultaneously frustrating independent cross-platform developers.
Xithras
(16,191 posts)By locking developers into a platform-specific language you commodify their skill-set and drive wages down. Programming languages aren't created for developers, they're created for the developers bosses. There is nothing that you can do in Java, or Python, or Objective-C, or Swift that you can't also do in Assembly, so why aren't we all coding in Assembly or even machine code? Because it would take too long to write the code, costs would go up, debugging time would go up, companies would need to hire a LOT more programmers, and employers would have a lot harder time hanging onto people because the skills would be easily transportable.
New languages are invented to speed development, reduce complexity, reduce the skill needed to write good software, and simplify debugging. These all reduce the number of software developers needed for a project, lower wages by lowering the skill-bar for new hires, and lighten the ongoing costs of the debugging and maintenance processes. New programming languages may make developers jobs a bit easier, but they have ALWAYS been about saving employers money and making development cheaper. In Apple's case, lowering development costs makes their platform more attractive to large scale customers who may initially be spooked by the higher up front cost of the hardware. Lower development costs make for a more attractive ROI.
hunter
(38,304 posts)... and society itself "wins." Look at the World Wide Web. It wouldn't be as powerful if it was the Microsoft Web, or the Apple Web, or (God Forbid!) America Online.
If you are a developer and you are not "multi-lingual" then C# will tie you to Microsoft, and Swift will tie you to Apple, making it more difficult for you to leave the pen for greener pastures or negotiate a higher salary.
Sigh. I first logged onto the internet in 1979 and I've been here since. Sadly, money changes everything.
These days I intercept my personal computers from the electronic waste bin, install Debian, and live in an Open Source Free Software wonderland.
A long, long, time ago I wrote some software that got sold to the Military-Industrial Complex. That left me bitter.
I'd be almost as bitter if my creativity was confined to Microsoft, or Apple, or Android platforms.
So here I am, my phone isn't smart, my software is Open Source, and my garden is organic.
If I die on the streets living grouchy in a cardboard box I'll be satisfied knowing I still own my soul.
Xithras
(16,191 posts)The online world was very different back in the CIS, BIX, and BBS days. The UI's may not have been as pretty, but you could hold intelligent conversations with people without much fear of trolls or disruptors, which were both rare. The open and free Internet killed that.
But yeah, in general I tend to agree with you.
hunter
(38,304 posts)My first above-board independent internet gateway was delphi.
Previous to that I was either an enrolled student, an employee, or someone with friends.
I think I was among the earliest fairly anonymous usenet people.
Alas, I was sometimes a Libertarian Star Trek Utopian Freak then (twisted, oh hell, yes!) so there are a few specific search terms I will never trust to google. I'm firmly a DU Democratic socialist now. 51% of the economy "We the People," 49% "Free market."
Funniest thing, one of my girlfriends once wrote some slash that many others have claimed. It amuses me to see the pretenders. I was there when she wrote it.
onehandle
(51,122 posts)...by a vast number. They paid to get face to face time with these Apple programmers so that they could program better.
Apple has created hundreds of thousands of programming jobs and independent programming careers since they introduced iOS in 2007.
Yes, your tinfoil hat is incorrect here.
hunter
(38,304 posts)"They paid to get face to face time with these Apple programmers."
No, no, no, thank you.
People paid Werner H. Erhard for EST seminars too.
I wouldn't have ever paid for such abuse, but if I'd been abducted by aliens to such a place I probably would have peed on someone.