618 karma · joined July 14, 2011
My anecdotal data is that people in an open plan sling more code, but better architectural decisions that don't require as much rework down the line (and as a result smaller 'output') come from private offices.
I joined about a year ago, and the only reason I did so was because most of the executive team, including the CEO, was replaced about a year prior to me joining. The new CEO is Blake Irving, who seems like a great guy (I had dinner with him a couple months ago) and did an AMA on Reddit: http://www.reddit.com/r/IAmA/comments/23v7f3/hi_im_blake_irv... . He also wrote an open letter to the FCC in support of net neutrality: https://garage.godaddy.com/godaddy/news/net-neutrality-ameri... . A lot of GoDaddy's senior leadership team these days is made up of people from Microsoft and Yahoo.
I would not have joined GoDaddy in its previous form, but it has made serious improvements to be a great tech company over the last couple years.
[1] http://www.theguardian.com/media-network/partner-zone-infose...
As others have posted, this is indicative of bad code. Java can certainly leak memory in the form of retained live references.
> Of course you shouldn't be using version 1.2.3.4.5, our code only works with 1.2.3.4.4, everybody knows that.
That's completely independent of the language or runtime being used, and is purely a project management issue (which breaking changes go into which version).
> that only runs on an obscure 6-year-old JVM
If there is code that imports classes specific to a JVM (com.sun, etc), then that code is doing something pretty much universally agreed on in the Java community to be a 'bad thing'. Otherwise, bytecode from Java 1.0 still runs on the latest JVM without issue.
You can use any language or runtime badly. There is a lot of code out there written in Java, and a lot of 'commodity' Java developers writing it. Of course there is going to be a greater volume of bad code, that's not an indictment of the platform itself.
* The expectation is to be available during business hours for the local time zone, unless something very weird is going on. However, I will generally block a couple hours in the afternoon so I can go work out or help my daughter with her math homework (whatever hours I take off are made up at some point later that evening or later that week)
* Project scheduling doesn't change. The expectation is still to work about 8 hours a day, unless there is vacation is in the mix, but that's no different than people who work in an office.
* My employer provides all the electronics (computer, LCD, etc). It is also company policy to pick up the cost of an IP phone and high-speed internet (50MB/s down/15MB/s up where I'm at). When I was negotiating my salary for the position I took into consideration that I would be paying for my own "perks" (coffee, etc). I have friends who work at companies like Palantir that are paid a stipend for "forward-deployed" engineers that covers the perks that other employees receive in the office (catered lunch, coffee, etc).
As far as Phoenix-based Python developers, there appears to be a Python meetup group, 'DesertPy': http://www.meetup.com/Phoenix-Python-Meetup-Group/
As far as real estate... I don't know about your specific situation but as a whole the valley is much more expensive than the Phoenix area. San Jose, through Cupertino, up to Mountain View... on average you're easily paying twice as much for the same square footage (I just checked San Jose on Zillow. 2,000 sq ft is easily 600k).
Speaking to your troubles hiring, I can only generalize based on some job ads that I've seen. Like I mentioned before, some ads just seem too targeted at the "early 20s fresh out of school" demographic that companies think they can lure in with free soda in exchange for 80-hour weeks. Senior devs just don't go for that, so they ignore those ads and go interview at Honeywell instead.
I run into Ruby and Python devs all over the place. The problem is, like this article touches on, the jobs advertisements I've seen for Python seem to be written for the "hipster" crowd (I've even seen some with "ninja", etc in the title).
Then they end up wanting to pay $30k less than the competition, so most people I know chose to go work at Intel, Freescale, Microchip, one of the aerospace companies... somewhere that has a professional atmosphere, pays well, and you get to work on interesting tech.
They also discuss how these are 1M read requests.
During the Cold War the Soviets lost a nuclear submarine in international waters. The Soviets couldn't find it, the US (through its network of acoustic listening stations in the oceans) could. There was a multi-year effort to recover the sub, which required an elaborate cover story and operational security.
If the Soviets knew what the recovery ship was doing, they would have blown it out of the water. All the secrecy was necessary to protect the mission.
You realize that the 'Eclipse IDE for Java Developers' comes with official support for Maven out of the box, right? I'm not a fan of Maven, but my Eclipse-related issues have been minimal.
I've never had to build a priority queue. The language I've used has always had a library to provide that functionality for the purposes I needed. However, knowing what a priority queue is, how it works, and when it is appropriate to use (and those pesky big O performance implications) were all taught in an algorithms course (and are a quick CLRS reference away).
On performance problems, that is an incredibly hand wavy response. You seem to be assuming product success is a $50 million Series A round and enough buzz to make people want to work for you. And what are you going to do with that money? Probably hire someone who has an understanding of algorithms and operating systems.
I'm assuming this meant in the sense of "why can't I just copy a binary tree implementation from the internet and turn it in", since every advanced course I took in college encouraged the use of libraries where appropriate (to the point of linking to open source libraries on the course website). The answer to the former question should be painfully obvious... you're learning to be a creator of things, not a user of things. That would be like taking an operating systems course and saying, "See, I downloaded Windows! Where is my A?"
2. Performance Matters
Tell this to Digg (one small example in a sea of them). Kevin Rose has said several times that he regretted hiring so many "get things done" PHP programmers that had no in-depth algorithm knowledge because as soon as the site had to scale none of them had knowledge outside of their PHP sandbox.
As far as the difference between copyright, trademark, and patents, ABET requires a Capstone/'Ethics' course that includes these very topics. I actually did a research report on software patents during my undergrad which included a presentation on how software patents have affected the software industry. As far as planning a product and tracking its development, ABET also requires an 'Intro to Software Engineering' course which is, you guessed it, planning and building a product from first principles.
System.out.println(x == y);