~/devreads

23 Jan 2015

22 Jan 2015

8 min read

In my last post I showed what makes the Nim programming language special. Today, let’s consider Nim from another angle: What makes Nim a practical programming language? Binary Distribution Programs written in interpreted languages like Python are difficult to distribute. Either you require Python (in a specific version even) to be installed already, or you ship it with your program.…

Shirish Padalkar 1 min read

Agile gave us a set of principles that allowed us to build projects in an iterative fashion and respond to change. The benefits of using agile practices over waterfall practices are well known and well documented. However, despite agile projects existing for years, the approach to security has remained the same as it was when waterfall was the way to…

21 Jan 2015

lukaseder 1 min read

Subscribe to this newsletter here Tweet of the Day Today, we’re very happy to have “spied” on our users as we can now show you a whole Tweet Conversation of the Day It was initiated by Dan Woods who proposed a talk about RxJava, jOOQ and Reactive Streams at GR8Conf. https://twitter.com/danveloper/status/553370842948567040 Dan Woods then proposed … Continue reading jOOQ Newsletter:…

jooq-newsletterconverterprivdergroovyhanajava

lukaseder 1 min read

Jamie Allen, Typesafe‘s Director of Global Services published an interesting point of view on Twitter: Pivotal’s move to end support of Groovy is a stark reminder that enterprises who depend on FOSS projects should help support them. — Jamie Allen (@jamie_allen) January 20, 2015 And he’s right of course. We are constantly reminded of the … Continue reading Open Source…

open-sourcebusinessbusiness modelgroovyopen source

Hunter Loftis 6 min read

All successful applications grow more complex over time, and that complexity creates challenges in development. There are two essential strategies to manage this problem: a team can keep everything together (create a monolith) or a team can divide a project into smaller pieces (create microservices). The monolith at its most extreme is a single code […] The post Why Microservices,…

newsapp architecturecloud infrastructure

Sunil Mundra 1 min read

Having worked on consulting engagements for a fair amount of time, I have realized that consulting is both a science and an art. The science lies in the domain knowledge or the ‘hard’ skills. In my case, it is currently Agile and Lean. The art aspect relates to the ‘soft’ skills, which in my view, are as critical as the…

20 Jan 2015

Michael Carroll 1 min read

For our December FAQs, we talk all things mobile push notifications, including APNS, GCM, and pub/sub for real-time notifications.

Michael Carroll 1 min read

For our December FAQs, we talk all things mobile push notifications, including APNS, GCM, and pub/sub for real-time notifications.

1 min read

The situation: As a multi-tenant cloud service, Mingle uses ElasticSearch as its search facility for card, page, and murmur content, indexing all content to a single ElasticSearch node. However, a series of problems (hitting hard file descriptor limits, OOM errors, and corrupted indexes) forced our team to reassess the infrastructure.

19 Jan 2015

lukaseder 1 min read

Today there was great news in the JVM ecosystem. Pivotal, the company who is committed to OSS has become a bit less committed: The reaction in the community were largely summarised by the hashtag #jesuisgroovy: Je suis groovy #groovylang — JBaruch 🎩 (@jbaruch) January 19, 2015 The interesting part in Pivotal’s announcement is this one: … Continue reading Suis-je Groovy?…

open-sourcebusinessbusiness modelcommercial interestsdual-licensing

lukaseder 1 min read

Some logs are there to be consumed by machines and kept forever. Other logs are there just to debug and to be consumed by humans. In the latter case, you often want to make sure that you don’t produce too much logs, especially not too wide logs, as many editors and other tools have problems … Continue reading Using Java…

javajava 8loggingstring manipulation

Rhushikesh Apte 1 min read

The word “technical support” has a slightly negative connotation in the developer community. Most think of it as an arduous drag involving looking through piles of logs and stack traces, and taking random guesses. And that was exactly what I believed before actually experiencing it myself in a project. It taught me a lot and changed my perspective towards software…

18 Jan 2015

1 min read

Once upon a time, my blog was OpenSource. People liked it and forked it tons of times, but they never changed some stuff (disqus, analytics).

1 min read

I created a tool that lets you architect your Sass project in a single location (your manifest file), and it will build all of the directories and partials for you! This blog explains what a Sass manifest file is, what it does, and why you should use one.

16 Jan 2015

lukaseder 1 min read

A wise man once said: Anything that can possibly go wrong, does — Murphy Some programmers are wise men, thus a wise programmer once said: A good programmer is someone who looks both ways before crossing a one-way street. — Doug Linder In a perfect world, things work as expected and you may think that … Continue reading Infinite Loops.…

javabugcoding standardscoding styleinfinite loops

15 Jan 2015

14 Jan 2015

Matthew Green 6 min read

I’ve been working on some other blog posts, including a conclusion of (or at least an installment in) this exciting series on zero knowledge proofs. That’s coming soon, but first I wanted to take a minute to, well, rant. The subject of my rant is this fascinating letter authored by NSA cryptologist Michael Wertheimer in February’s Notices … Continue reading…

backdoorsdual ec

Richard Schneeman 2 min read

Debugging a large codebase is hard. Ruby makes debugging easier by exposing method metadata and caller stack inside Ruby's own process. Recently in Ruby 2.2.0 this meta inspection got another useful feature by exposing super method metadata. In this post we will look at how this information can be used to debug and why it […] The post Debugging Super…

engineeringdeveloper toolsrailsruby

Peter van Hardenberg 3 min read

The most successful teams use their data to make the best decisions. We built Dataclips to allow your team to better share, reason about, and ask questions of the data you keep in Heroku Postgres. Heroku Dataclips are a lightweight data sharing tool that lets you take advantage of your organization’s most valuable asset. Dataclips […] The post Share your…

newsheroku dataclips

Ryan Murray 1 min read

MongoDB is one of the most well-known NoSQL solutions in the industry due to its high performance, availability, scalability and ease of operations. But it can also be an important tool in enabling agile engineering practices. At a premier U.S. clothing retailer, we employ MongoDB for a wide range of supply chain systems, including various master data management, inventory and…

Prajakta Kudale 1 min read

I love doodling, I always have. I used to doodle everywhere. All the rear pages of my books used to be messy with my drawings. Our education system focuses mostly on getting the best out of the students by drilling down their heads and asking them to study hard. A typical career aspiration of parents is to see their kids…

13 Jan 2015

Anand Bagmar 1 min read

Ideation We all get great ideas. Some ideas work, while others don’t. Have you wondered why those ideas don’t work? Based on my experience, a good number of my ideas didn’t work because I was unable to sell them to the intended audience. I was unable to convince them, or perhaps I tried the wrong approach in telling them that…

12 Jan 2015

jonskeet 2 min read

Last week I learned that using static is going to be the syntax for importing static members (including extension methods) in C# 6. That fulfils a feature request I made in September 2005 (my fourth ever blog post, as it happens). With a feature request turnaround of 10 years, I figure I should get put … Continue reading C# 7…

c# 7wacky ideas

Sunit Parekh 1 min read

One of the key objectives of a project inception is to collect requirements collaboratively. But, many times, it is difficult to decide where to start and what to focus on. Story mapping is an engaging activity where all participants are involved in the process of building the product backlog on a wall, versus writing a dull 100-page requirement document.

Sumeet Moghe 1 min read

Community Building at Thoughtworks isn't just limited to technology. We want to be the glue in bringing together change makers from all walks of life who want to make positive impacts on society. One such group are the folks at The Kahani Project.

Julio Farah 1 min read

After one year of working as a consultant at Thoughtworks, I’ve seen many colleagues stand out in projects. This is regardless of their technical knowledge or their time spent in the company. I’ve looked up to these people and tried to find out the ‘secret ingredient’ that makes them stand out. By talking to them and attending coaching meetings, I…

11 Jan 2015

41 min read

This is a response to the following question from David Albert: My mental model of CPUs is stuck in the 1980s: basically boxes that do arithmetic, logic, bit twiddling and shifting, and loading and storing things in memory. I'm vaguely aware of various newer developments like vector instructions (SIMD) and the idea that newer CPUs have support for virtualization (though…

10 Jan 2015

Schakko 1 min read

Due to some internal network problems I fired up Wireshark and saw a lot of gratuitous ARP requests/broadcasts. I had never seen the sending MAC or IP before but could assign it to one the ports our switching hardware. The designated port was used for a Citrix XenServer virtualization environment, […] The post Fixing gratuitous ARP requests appeared first on…

networking

9 Jan 2015

1 min read

I followed @mdo’s recent article “Using Sass with Jekyll”, and wanted to point out the results.

8 Jan 2015

Peter van Hardenberg 3 min read

Each major release of PostgreSQL brings lots of great new functionality. The recent release of PostgreSQL 9.4 includes an exciting new JSON data type, improvements to window functions, materialized views, and a host of other performance improvements and enhancements. We’ll go into more depth on what’s new and exciting in this release below, but first, […] The post PostgreSQL 9.4…

newsdatabasedeveloper toolsheroku postgrespostgres

lukaseder 1 min read

In the recent past, we’ve shown how Java 8 and functional programming will bring a new perspective to Java developers when it comes to functional data transformation of SQL data using jOOQ and Java 8 lambdas and Streams. Today, we take this a step further and transform the data into JavaFX XYChart.Series to produce nice-looking … Continue reading Transform Your…

java 8sqlbar chartsjavajavafx

Dai Zhang 1 min read

There is the world, then there is China. China is not often seen as a player in the field of innovation. Manufacturing plants with cheap labor is the stereotype when we think about the country. The truth? The number of people with Internet access is now more than 500 million, and gigantic companies have grown from the huge marketplace. Notable…

7 Jan 2015

Dan McClure 1 min read

We live in one of history’s great eras of opportunity. In the years ahead incredible things will be done in the name of innovation, ultimately replacing an economic system that has been the foundation for employment and wealth for hundreds of years.

6 Jan 2015

lukaseder 1 min read

Some databases are awesome enough to implement the MEDIAN() aggregate function. Remember that the MEDIAN() is sligthly different from (and often more useful than) the MEAN() or AVG() (average). While the average is calculated as the SUM(exp) / COUNT(exp), the MEDIAN() tells you that 50% of all values in the sample are higher than the … Continue reading How to…

sqlaggregate functionsaverageinverse distribution functionsjooq

5 Jan 2015

4 Jan 2015

3 Jan 2015

2 Jan 2015

Matt Cutts 1 min read

I’d like to mention two books that stood out for me in 2014: Nonfiction: The First 20 Minutes. Gretchen Reynolds is a New York Times columnist who distills health and exercise research down to practical, readable advice. I’ve never dog-eared as many pages in a book as The First 20 Minutes. Reynolds writes about why […]

books magazines

1 Jan 2015

31 Dec 2014

12 min read

Russian Translation by frol, Chinese Translation by JiyinYiyong, Japanese Translation by Mutsuha Asada The Nim programming language is exciting. While the official tutorial is great, it slowly introduces you to the language. Instead I want to quickly show what you can do with Nim that would be more difficult or impossible in other languages. I discovered Nim in my quest…

Dave Cheney 2 min read

This project was featured on Hackaday and the Atmel blog. For the next step in my Apple 1 replica project I decided I wanted to replace the Arduino Mega board with a bare Atmega MPU with the goal of producing a two chip solution — just the Atmel and the 6502, no glue logic or external support […]

hardware hackingarduinoatmega1284p

1 min read

This is a personal post about my 2014 in review (because a lot happened) and my goals for 2015. Happy New Year!

30 Dec 2014

lukaseder 1 min read

Sometimes when aggregating data with SQL, we’d love to add some additional filters. For instance, consider the following world bank data: GDP per capita (current US$) 2009 2010 2011 2012 CA 40,764 47,465 51,791 52,409 DE 40,270 40,408 44,355 42,598 FR 40,488 39,448 42,578 39,759 GB 35,455 36,573 38,927 38,649 IT 35,724 34,673 36,988 33,814 … Continue reading The Awesome…

sqlaggregate functionsfilter clausejooqpostgresql

4 min read

I just made it to Sweden suffering from jet lag induced insomnia, but this blog post will not cover that. Instead, I will talk a little bit about technical debt. The concept of technical debt always resonated with me, partly because I always like the analogy with “real” debt. If you take the analogy really far, there are some curious…

29 Dec 2014

Matthew Green 8 min read

If you don’t follow NSA news obsessively, you might have missed yesterday’s massive Snowden document dump from Der Spiegel. The documents provide a great deal of insight into how the NSA breaks our cryptographic systems. I was very lightly involved in looking at some of this material, so I’m glad to see that it’s been … Continue reading On the…

backdoorsnsatls ssltor

lukaseder 1 min read

We’ve recently published an article about how to bind the Oracle DATE type correctly in SQL / JDBC, and jOOQ. This article got a bit of traction on reddit with an interesting remark by Vlad Mihalcea, who is frequently blogging about Hibernate, JPA, transaction management and connection pooling on his blog. Vlad pointed out that … Continue reading Leaky Abstractions,…

javasqlhibernateinternal functionjpa

28 Dec 2014

27 min read

Here's a language that gives near-C performance that feels like Python or Ruby with optional type annotations (that you can feed to one of two static analysis tools) that has good support for macros plus decent-ish support for FP, plus a lot more. What's not to like? I'm mostly not going to talk about how great Julia is, though, because…

1 min read

Just search for “hackers gif“. There you go. Fun for your work emails for the next 500 years. From the awesome movie Hackers. That movie together with The Warriors convinced me that I wanted to live in NYC when I was like… 14 years old.

27 Dec 2014

Kaifeng Zhang 1 min read

With the New Year approaching, the Insights editorial team is thrilled to announce the top technical content from 2014 as well as editor's choices from our Technology, Software Testing and Continuous Delivery channels. Each blog comes from a Thoughtworker’s real-world experience and goes up with a short write-up by the editor. We hope you enjoy them a second time around.…

26 Dec 2014

Dave Cheney 5 min read

Woot! This project was featured on Hackaday. No Apple 1 under the tree on Christmas Day ? Never mind, with a 6502 and an Arduino Mega 2560 you can make your own. The Apple 1 was essentially a 6502 computer with 4k of RAM and 256 bytes of ROM. The inclusion of a 6821 PIA and a […]

hardware hackingappleapple 1apple onearduino

24 Dec 2014

1 min read

This guide walks you through what a Bacs approved bureau is and the benefits and reasons for using one.

Michael Friis 1 min read

Last week, a security fix was released for Git. The fix patches a bug in the Git client that is exploitable on operating systems with case insensitive file systems such as Windows and OS X. Heroku has updated the Git installer that we ship with Toolbelt for Windows. We have also removed an old Git […] The post Update Git…

news

Pete Hodgson 1 min read

In the first article in this series I introduced the concept of the ./go script, a unified interface to all the dev tooling on your project. In this article I'd like to talk about one of the most important properties of a good ./go script - isolation.

23 Dec 2014

Dave Cheney 2 min read

The common contract for functions which return a value of the interface type error, is the caller should not presume anything about the state of the other values returned from that call without first checking the error. In the majority of cases, error values returned from functions should be opaque to the caller. That is […]

goprogrammingerrorsinterfaces

Paul Sullivan 1 min read

My colleagues Aaron Sachs and Anupam Kundu recently posted an article with the provocative title, “Is it Time to Fire Your Product Manager?” You should read it if you are curious about the pressures of being in Product Management or how Product Managers should be evaluated.

22 Dec 2014

Luciano Mammino 5 min read

The author shares 5 powerful quotes and lessons learned from mentors during an intensive 3-month accelerator program in Ireland focused on startups and entrepreneurship. Key takeaways include the importance of passion, understanding customers' problems, building a great team, and working tirelessly while maintaining positivity.

startupentrepreneurship