ThoughWorks Technology Radar May 2013 - Maven replaced by Gradle, Clojure and Scala on adopt, big enterprise SW and WS-* out, lot of interesting stuff to adopt or assess
Programmer Competency Matrix - a nice overview of a programmer needs to know in different areas (computer science: data structures etc., SW engineering: SCM etc., programming: defensive coding, IDE etc.) + what experience and knowledge they need, split into 4 levels. Where are you?
The 12 most disruptive technologies of the next 10 years according to McKinsey - 1. mobile internet, 2. automation of knowledge work, 3. internt of things, 4. cloud, 5. advanced robotics, 6. [near-]autonomous vehicles, 7. next-generation genomics, 8. energy storage, 9. 3D printing, 10. advanced materials, ...; the full 178 page report.
Discussion: World's Biggest 'Agile' Software Project Close To Failure - what is/isn't agile, agile vs. waterfall etc; a nice collection of all the possible opinions and misunderstandings. Some of my favorites: waste: '[..]An "agile" project cannot fail and cost Billions because it must always deliver runnable software with a maximum of a few weeks delay[..]' (runnable = delivering value), separation: '[..] my experience has been that separating the designer/architect role from the developer role is fraught with pitfalls. The people writing the code should be the ones designing it, [..]', stability: '[..] On the successful projects that I've worked with in Agile, there's strong stakeholders, good architecture keeping the vision in place and project management that keeps things well orchestrated. Without those in the mix, it'll fail just like all software projects. [..]', waterfall success, people issue: 'The problem here isn't waterfall/agile. The problem here isn't .Net/Linux. The problem here is the parties involved. [politicians and IT dinosaurs]' (learn what's needed from drunk, bitching employees; ignore official nonsense requirements),: simplicity '[..] It would probably be a lot easier if they started by making a simpler tool - instead of trying to calculate everybody's entitlements everywhere [..]', agile suitability: '[..] You cannot use Agile to build a 100-mile canal, as the whole thing would be useless even if you completed 99 miles. [..]'.
Some people seem to believe that agile means no architecture and no/too little planning. Some believe that agile = hack now, fix later.
Startups etc.
Why do we worry about scaleability on Day 1? (via @simenfur) - you can fake/do many things manually to get started to validate your service and eventually to provide it to real, paying customers without lot of features/automation that you might believe to be essential; many real-world examples of this. Quoting 42Floors: “In fact, when you look at each aspect of our operations, you will find a fairly sophisticated manual operations process predating every piece of technology that we’ve built.” Buffer launched a business without 5 seemingly essential ingredients, f.ex. upgrade from a free to paid account. ... Try the “service-first” approach!
Confessions of a lean startup: how I got my first customers without having a product (in 7 weeks) - an interesting story of verifying that an idea is worht pursuing by getting paying customers before there was any product (doing it manually for them), the tools and approaches to use and mistakes to avoid (attract people - signups - interviews & pitches - paying customers - development)
Clojure in the Enterprise? - about the differences between the Clojure and the enterprise java (with heavy frameworks such as JPA, JSF, mutable state) ways and difficulties of introducing Clojure due to old-fashioned thinking, limited skills, etc. "Take away objects, mutable state, variables, loops... a lot of Java developers are immediately all at sea and have no idea how to solve even basic problems. They'll try to bend Clojure to their OOP way of thinking and they'll most likely fail."
World Singles' experience with Clojure: "We love Clojure. It's made development a lot more fun. We're able to solve harder problems, make changes faster, leverage multi-core concurrency more effectively, and we have a much smaller code base to maintain."
Replace Temp with Query in Clojure - in this post we can follow an interesting refactoring from a deeply nested if & let code to a much flatter one (featuring cond to test multiple conditions (instead of guard conditions used in imperative languages) delay to be ably to bind an expression to a local variable without evaluating it yet)
Reconstructing Clojure Macros With Speclj - a good idea to learn macros by trying to create one's own implementation of existing Clojure macros, driven by tests that define the expected behavior of the macro (using macroexpand, macroexpand-1, macroexpand-all)
Pithering About » REPL bootstrap pimpage - neat tricks with a custom bootstrap REPL namespace - print last few commits and git branch, pre-loading common libs