unobfuscate
Nobody is arguing Apple hasn't done great things for the evolution of phones and laptops, but so have other companies. Least we all forget, Apple is the granddaddy of ripping off technologies (and good for them, we are better off for it).
With news of the forthcoming retina 13 inch Macbook pro, I was contemplating getting a new laptop (the ipad is fun, but I miss coding on the go). But today, that thought officially died.
We are done, Apple and I. They have gone too far, and I can no longer support them as a company. Every dollar I spend on their products will go toward killing the very place I call home. I encourage everyone to vote with their wallets. If you believe Apple is hurting our industry, stop supporting them. Next time someone asks me for gadget/computer advice, I will be pointing them in a different direction.
"Setup your account! Don't want your friends to see your profile? click here! Want to see more people? Click here!"
So people connected through facebook can see everyone (minus their friends), and people who aren't can only see others who are not. Keep pushing them on facebook connect, when they do a search, tell them how many people they are missing out on! (3 results, 98 results if you click here!)
This makes the whole debate even stranger. The fella from Curebit messed up in a lot of ways (really, he couldn't even be bothered to host the content himself?), but on a scale of 1 to a million, I would put this whole mess at closer to 1. Let's be frank, any html/css/js you toss online can be sourced, it is the nature of the client side rendering world we live in.
Where do you draw the line, is it not okay to use someone else's javascript function? Is it not okay to use their mix of background colour and fonts? When we start to decide what is and is not okay, we start to create some scary precedence.
This is probably completely different for lower ticket items that have shorter sales cycles (like bug tracking software). But it also speaks to the risk they took, given that they weren't wasting money experimenting on the sales staff. (their effectiveness was quickly apparent).
It's so true, and I feel it works both ways. You can be a developer who's surrounded by complete idiocy, and tries to infuse change with little success. You can also be the problem, and be causing everyone else more headache with your unrealistic expectations.
If choices are being made to drive customer value which impact your enjoyment of the job (work sucks, they threw out stuff you did before, your suggestion was ignored, etc), then it's time to make a decision about if you belong on that team or at that company. Do you believe in what your company is trying to accomplish? If not, it can severe impact your desire to go to work in the morning.
Just please don't check out, quit instead! Having someone on a team who's just phoning it in hurts everyone.(this is not targeted at anyone, more a blanket statement)
Scrum is about visibility, accountability, and continuous product evolution. It's about controlling what gets done, and when we do it, not who defines the goals.
It's your companies loss if they don't take the input of both the developers and customers when deciding what to do next.
Having a process that is transferable between teams and companies makes the lives of everyone better, and gets us to past a lot of the overhead that leads to unfulfilled goals and unrealistic deadlines. What if your team grows to 4 people, and they all have their own idea of how to get stuff done? Without some formality, it becomes the wild west. What if you decide to leave, will you leave chaos in your wake? What if management keeps bugging you about getting stuff done sooner? If there is no well defined process, then management may be left believing the software team just isn't 'professional' enough to get things done. With a well defined and understood process, everything can be tracked and people can be made accountable for their choices. We aren't talking about a witch hunt, it will allow the company as a whole to grow and get better at defining what can be accomplished in what timeframe. If everyone agrees to abide by the process, but continually subvert it (1 + 2 = 4), then you can either suffer now (work 50+ hours a week), suffer later (build up of technical debt), or find somewhere to work values building really great software in a coherent manner.
So what is Scrum? It's a process, as are Waterfall, RUP, and XP. Those of us that willingly practice believe it's a great way to achieve maximum visibility and minimize scope creep, all while reducing artifacts and overhead. It allows us to deliver value early and often. It gives developers the tools and justification to point and say "It can't be done given our constraints". Scrum is great for team ownership, and encourages us to get early feedback on features.
Regardless of how you decide to get stuff done, make sure you have 100% buy-in from the people cutting the checks. This whole topic reminds of the discussion on designer pricing (http://news.ycombinator.com/item?id=3042803). We assume non-technical team members (our customers in many cases) implicitly understand what it takes to get a product shipped. We must do our best to bridge the gap between expectation and reality.