~/devreads

20 Jun 2016

11 min read

After reading the feedback of my recent article about running DDNet, I noticed that people found it interesting how I’m trying to minimize money and resources. I also noticed that I had been doing something similar with my personal computing hardware setup for an even longer time. I’ve mostly been using the same hardware for personal computation purposes over the…

jgamblin 1 min read

While rebuilding my iPad this weekend I noticed that I could name it an emoji. So I named my iPad 📱(U+1F4F1): While I don’t have any problem using the iPad it basically makes it unreachable on the network via hostname. From there I renamed all of my lab machines emojis. Mostly variations of 💩 (U+1F4A9) because I am sophomoric: In…

careerhacking

18 Jun 2016

Matt Cutts 1 min read

Over the last couple years, I’ve seen more and more people in technology trying to make government work better. They’re idealists who are also making a large impact. These are people that I respect–some of them worked to fix healthcare.gov, for example. From talking to many of them, I can tell you that their energy […]

personal

16 Jun 2016

1 min read

This post describes four projects that share a common theme of enhancing or using generative models, a branch of unsupervised learning techniques in machine learning. In addition to describing our work, this post will tell you a bit more about generative models: what they are, why they are important, and where they might be going.

research

kevin 3 min read

I have a lot of tests in Go that integrate with Postgres, and test the interactions between Go models and the database. A lot of these tests can run in parallel. For example, any test that attempts to write a record, but fails with a constraint failure, can run in parallel with all other tests. […]

codetodays world

15 Jun 2016

Matthew Green 11 min read

Yesterday at the WWDC keynote, Apple announced a series of new security and privacy features, including one feature that’s drawn a bit of attention — and confusion. Specifically, Apple announced that they will be using a technique called “Differential Privacy” (henceforth: DP) to improve the privacy of their data collection practices. The reaction to this … Continue reading What is…

appleprivacy

Stanko 1 min read

If you ever had to fix element on scroll, you probably had an issue on iOS Safari (and other mobile devices). Element will usually flicker, and disappear until scrolling has stopped completely. Just force GPU acceleration by adding transform: translate3d(0,0,0); to your element. You will have something like this: .Element-header { transform: translate3d(0,0,0); } .Element-header--fixed { top: 0; position: fixed;…

13 Jun 2016

43 min read

Japanese Translation In this article we’re going to write a simple 2D platform game. You can also consider this as a tutorial for game development with SDL2 in Nim. We will read in user input, display graphics and a tile map, and simulate simple 2D physics with collision detection and handling. Afterwards we will implement simple camera movement and game…

blog.muffn.io (muffn_) 1 min read

Intro # Virtualization is awesome. It’s been the standard for enterprises for many years and although containers are gaining interest, virtual machines remain the go-to for any business; you’d be either crazy or incompetent not to go down this route in most scenarios. This post will go through the very basics of setting up and using ESXi.

12 Jun 2016

jgamblin 1 min read

Earlier today I ran across this blog post on hijacking windows .lnk file so I decided to build out and test a full POC for it using Windows 8.1. To reproduce this just copy these 7 lines into powershell and ctrl+c now runs calc.exe instead of copying your text: https://gist.github.com/jgamblin/4aa897a2cca6912eeea96a12d73d8cd6 For extra jerkiness this will shutdown a windows machine when…

hacking

Dave Cheney 5 min read

A few months ago I gave a presentation on my philosophy for error handling. In the talk I introduced a small errors package designed to support the ideas presented in the talk. This post is an update to my previous blog post which reflects the changes in the errors package as I’ve put it into service […]

goprogrammingerror handlingerrorsstacktrace

10 Jun 2016

Gary Allison 7 min read

At Bazaarvoice, we’ve pulled off an incredible feat, one that is such an enormous task that I’ve seen other companies hesitate to take on. We’ve learned a lot along the way and I wanted to share some of these experiences and lessons in hopes they may benefit others facing similar decisions. The Beginning Our original […]

big datasoftware architecturesoftware business

Robin Wieruch 5 min read

In the past, we at Small Improvements have sponsored various Angular Conferences and Meetups. So how did our developers end up at React Europe? Let’s backpedal to understand the story behind that. Small Improvements and React!? At Small Improvements we decided in early 2016 to shift towards React instead of working to migrate to Angular […]

frontend

9 Jun 2016

Ike DeLorenzo 2 min read

For many of us, building apps is a team sport. With any team, getting all the people, processes and tools in sync and working together can be a challenge, and this is especially true with software development. Today we are announcing a new feature designed to help to make building and running effective software teams […] The post Introducing Heroku…

news

jonskeet 8 min read

I’ve been following the progress of .NET Core with a lot of interest, and trying to make the Noda Time master branch keep up with it. The aim is that when Noda Time 2.0 eventually ships (apologies for the delays…) it will be compatible with .NET Core from the start. (I’d expected to be able … Continue reading Tracking down…

benchmarkingc#diagnosticsgeneralperformance

8 Jun 2016

19 min read

It’s been roughly 3 years since DDraceNetwork (DDNet) started in the summer of 2013. Last year I wrote a non-technical History of DDNet. Today in this post we will dive into the technical side of what makes DDNet run. For the uninitiated, DDNet is an open-source modification of Teeworlds, a retro multiplayer shooter. DDNet is a game in which you,…

7 Jun 2016

kevin 2 min read

Recently I put the maximum amount of cash into my IRA account. Since stock prices jump up and down all the time, I wondered whether the current price would be the best one to buy the stock at. In particular, I'm not withdrawing money from my IRA for the better part of 40 years, so […]

code

5 Jun 2016

14 min read

Introduction to the Introduction (Meta-Introduction) Wikipedia gives us a nice description of metaprogramming: Metaprogramming is the writing of computer programs with the ability to treat programs as their data. It means that a program could be designed to read, generate, analyse and/or transform other programs, and even modify itself while running. In this article we will explore Nim’s metaprogramming capabilities,…

3 Jun 2016

Roseanne Malfucci 1 min read

On the last day of the Grace Hopper Celebration of Women in Computing, I sat on stage with four developers watching incredulously as 150 stadium seats filled to capacity. Named for the computer programming pioneer and Navy Admiral Grace Hopper, this conference is the world’s largest gathering of women technologists, and our workshop, #TechAtAnyAge, was the very last session of…

2 Jun 2016

Michael Carroll 1 min read

The expectations for IoT expands day by day. Is the Internet ready? It provides little in terms of QoS, reliability, security and availability.

Michael Carroll 1 min read

The expectations for IoT expands day by day. Is the Internet ready? It provides little in terms of QoS, reliability, security and availability.

Andrey Petrov 12 min read

Andrey Petrov is the author of urllib3, the creator of Briefmetrics and ssh-chat, and a former Googler and YCombinator alum. He’s here to tell us of a dangerous expedition his requests undertook, which sent them from Python, through the land of C, to a place called Go (and back again). Today we're going to make […] The post See Python,…

newscloud infrastructuredeveloper toolsgolanguages

2 min read

As you may know, one of my (very geeky) interests is Approximate nearest neigbor methods, and I’m the author of a Python package called Annoy. I’ve also built a benchmark suite called ann-benchmarks to compare different packages. Annoy was the world’s fastest package for a few months, but two things happened. FALCONN (FAst Lookups of Cosine and Other Nearest Neighbors)…

Victoria Ayo 1 min read

This April, I had the privilege of attending the Health Experience Refactored Conference in Boston. As a designer who has done research and published work in the community health space, I have seen first hand the importance of intentional and purposeful design in influencing behavioral change. When users feel engaged and considered, they feel empowered to take control of their…

1 Jun 2016

10 min read

With Java 8 now in the mainstream, Scala and Clojure are no longer the only choices to develop readable, functional code for big data technology on the JVM. In this post we see how SoundCloud is leveraging Apache Crunch and the new Crunch Lambda module to do the high-volume data processing tasks which are essential at early stages in our…

Mike Biggs 1 min read

Why is there no common definition of ‘Digital’? Like all buzzwords, “Digital” is starting to get my goat. Everyone uses it, in every context, thinking it refers to some avant-garde business strategy or must have part of their personal lives. If Digital can mean everything, then does it mean anything at all? I’m not alone in my confusion. When I…

31 May 2016

30 May 2016

27 May 2016

Tom Crayford 6 min read

At Heroku, we’re always striving to provide the best operational experience with the services we offer. As we’ve recently launched Heroku Kafka, we were excited to help out with testing of the latest release of Apache Kafka, version 0.10, which landed earlier this week. While testing Kafka 0.10, we uncovered what seemed like a 33% […] The post Apache Kafka…

engineeringapache kafkaperformance optimization

lukaseder 1 min read

A common myth in SQL is the idea that correlated subqueries are evil and slow. For example, this query here: It “forces” the database engine to run a nested loop of the form (in pseudo code): So, for every actor, collect all the corresponding film_actors and count them. This will produce the number of films … Continue reading Correlated Subqueries…

sqlaggregationcorrelated subquerynested querynested select

kevin 3 min read

(I'm omitting the many, many, astroturf posts - "Why X is Better than Twilio", "Why I'm Ditching Twilio for X" - and comments from employees at competitors between 2010 and 2014.) Twilio Raises $12m Series B "Can something like Twilio really become a $100m+ company? I hope so but my ignorance blinkers me to how […]

todays world

26 May 2016

Michael Carroll 1 min read

Our updated Java SDK has a new architecture (like the iOS v4 SDKs), and can be used on any Java platform including Java SE, Java EE, and Android.

Michael Carroll 1 min read

Our updated Java SDK has a new architecture (like the iOS v4 SDKs), and can be used on any Java platform including Java SE, Java EE, and Android.

kevin 5 min read

This is the story about an error that caused our tests to fail maybe one out of one hundred builds. Recently we figured out why this happened and deployed code to fix it. The Problem I've been fighting slow test times in Javascript and Sails since pretty much the day I started at Shyp. We […]

code

Andrew Gwozdziewycz 11 min read

For almost two years now, the Heroku Dashboard has provided a metrics page to display information about memory usage and CPU load for all of the dynos running an application. Additionally, we’ve been providing aggregate error metrics, as well as metrics from the Heroku router about incoming requests: average and P95 response time, counts by […] The post Heroku Metrics…

engineeringdata analyticsperformance optimizationproduct features

25 May 2016

Ted Nielsen 1 min read

Properly used, user research will destroy your product. This is a feature, not a bug. You have an idea, maybe even a great one. You’ve done your design sprint, your visioning session, your intense few days of white-boarding. You’ve built your draft roadmap, have a few personas and a well-worn copy of the Lean Startup. No plan, though, survives its…

24 May 2016

Joe Kutner 7 min read

Nothing beats Ruby when it comes to rapid development, quick feedback, and delightful coding. The Ruby runtime and traditional ruby frameworks favor synchronous programming, which makes them easy to use and understand. But microservices and real-time apps require asynchronous programming and non-blocking IO to enable maximum throughput. That's where JRuby comes in. You can build […] The post Reactive Ruby:…

news

3 min read

I’ve been trying to learn Clojure. I keep telling people I meet that I really want to learn Clojure, but still every night I can’t get myself to spend time with it. It’s unclear if I really want to learn Clojure or just want to have learned Clojure? Which makes me thing about my teenage years. I really wanted to…

Birgitta Böckeler 1 min read

The stereotype of the socially-awkward, white, male programmer has been around for a long time. Where does this image come from? Did the demographics of the world’s programmer population really evolve naturally, because “boys just like computers more”? What shaped our perception of programmers? This text is about some possible explanations I found when reading about the history of computing.

23 May 2016

19 May 2016

Gary Spillman 15 min read

What is Load Testing and Why Should I Care? Somewhere between the disciplines of Dev Operations, Database Management, Software Design and Testing, there’s a Venn diagram where at its crunchy, peanut-butter filled center lies the discipline of performance testing. Herein lies the performant (sic) Which is to say, professional performance testers have a very specific […]

testingapachejavajmeter

Aneesh Lele, Anupam Kundu 1 min read

Last week, over 72 companies demonstrated their approaches at Finovate Spring 2016. As VC funding slows down, entrepreneurs and intrapreneurs are now focused on incremental improvements instead of transformational game-changers. What's next for fintech?

1 min read

This post for Smashing Magazine looks at one of the most popular image effects, grayscale, to compare its implementation in HTML canvas, SVG, CSS filters, and CSS blend modes.

18 May 2016

Brett Goulder 4 min read

Editor's Note: SSL Is Now Included on All Paid Dynos as of September 22, 2016 At Heroku, we want to make it easy for everyone to be able to learn and explore our service, and the related ecosystem of technologies, for free – be it student, professional developer, hobbyist or just curious individual. We view […] The post Announcing Heroku…

newsdynosproduct featuressecurity

Mauricio Murillo 1 min read

Very often the construction of a Data Warehousing / Business Intelligence (DW / BI) system is performed following the flow of traditional engineering: analysis, design, construction, testing and implementation. Communication between developers and people interested in the business is almost nonexistent, and developers are interested in technologies for working with data but often neglect to ask this most important question:…

16 May 2016

1 min read

I’m just going to jump right into the definitions and rigor, so if you haven’t read the previous post motivating the singular value decomposition, go back and do that first. This post will be theorem, proof, algorithm, data. The data set we test on is a thousand-story CNN news data set. All of the data, code, and examples used in…

Badrinath Janakiraman, Martin Fowler, Mike Mason, Rebecca Parsons 1 min read

“We're not seeing the banks or the airlines, or the bigger retail outfits open-sourcing various bits of software. Why not? I think that the key distinction is, ‘Is this company one where the engineering staff or technical staff has a lot of leverage within the organization?’" —Martin Fowler, Chief Scientist One of the themes highlighted in the April 2016 edition…

15 May 2016

Per Fragemann 2 min read

Development is hard. But communication is even harder – especially across departments and continents. Our SI Process Hacks series will highlight a few simple hacks we wish we had known right from the start! The problem We deploy many times a day – bugfixes, feature improvements, new options, changes in user flows etc. As a […]

producthow we work

13 May 2016

10 min read

About a month ago I set up statistics for the official DDNet servers. My motivations for this are: Monitor the servers more easily Get notified about server problems Have nice graphs to look at The choices for the software used are mainly made to keep resource usage low, a general principle used for DDNet since we run on cheap VPSes…

12 May 2016

Alex Smolen 9 min read

Clever Badges makes it easy for K-2 students to log into applications. As with any new feature, we wanted to understand and address any potential security risks before we launched Clever Badges to our users. If we built Clever Badges without thinking deeply about security, it would have been easy to introduce a vulnerability and […] The post Clever Badges…

privacysecurity

lukaseder 1 min read

We’re excited to announce another very interesting guest post on the jOOQ Blog by John Mcclean from AOL. AOL is a global digital media and technology company, founded in 1985 and once known as America Online, AOL is now part of the Verizon Group. AOL focuses on four areas – video, mobile, ad technology and … Continue reading Cyclops-react Organises…

javajava 8aolcyclopsjohn mcclean

Jackie Kinsey 1 min read

Why Inclusivity, Equity and Leadership are key. Recently, I found an annual report from my first employer, a large UK firm, where I was one of six graduate trainees, with five of us being women. At that stage in my life, I didn’t even think about equality and diversity, and assumed the notion of 'work hard and you will be…

10 May 2016

Margaret Francis 2 min read

Today we’re announcing that the APIs for the Heroku Connect data synchronization service are now GA. These fully supported endpoints will help our users with the tasks they most need repeatable automation for: creating consistent configuration across development, staging, and production environments; managing connections across multiple Salesforce deployments; and integrating Heroku Connect status with their […] The post Heroku Connect…

newsapisdatadeveloper toolsheroku connect

Dave Cheney 1 min read

This is a quick post to describe how you can use test fixtures, data files on disk, with the Go testing package. Using fixtures with the Go testing package is quite straight forward because of two convenience features built into the go tool. First, when you run go test, for each package in scope, the […]

goprogrammingfixturestesting

9 May 2016

Sophie DeBenedetto 15 min read

It's been one year since Action Cable debuted at RailsConf 2015, and Sophie DeBenedetto is here to answer the question in the minds of many developers: what is it really like to implement "the highlight of Rails 5"? Sophie is a web developer and an instructor at the Flatiron School. Her first love is Ruby […] The post Real-Time Rails:…

newsapp architecturedeveloper toolsrailsruby

lukaseder 1 min read

Java 8 introduced JSR-308, which added new annotation capabilities to the Java language. Most importantly: Type annotations. It is now possible to design monsters like the below: The code displayed in that tweet really compiles. Every type can be annotated now, in order to enhance the type system in any custom way. Why, you may … Continue reading JSR-308 and…

javajava 8jooq-developmentannotatiomaniaannotations

7 May 2016

Per Fragemann 4 min read

The challenge: Scaling Our dev team has reached a quite impressive size these days! Unfortunately I just don’t scale to this size. I can’t possibly conduct 1:1s, listen to feedback, give feedback and help people grow in a flat team of 12 people. While I don’t code anymore these days, and have assigned most project […]

how we work

Stanko 1 min read

Atom Babel plugin doesn't highlight variables in ES6 (ES2015) template strings. You'll need to add this snippet to your Atom's style.less atom-text-editor::shadow .variable.js { color: #F8F8F2; } In general, you can just inspect stuff in Atom, find out what classes element are using, and then style it via CSS (LESS). Just don't forget to add atom-text-editor::shadow before your rules. If…

5 May 2016

Mike Mason 1 min read

What do Go and Swift have in common? These open source languages are great examples of how some of the most influential software in production today is coming not from traditional software companies, but from industry leaders like Google and Apple, through to disrupters like Uber, and tech industry giants like Netflix, Facebook and Twitter. The result is that open…

4 May 2016

MapTiler 1 min read

New version of the open-source project TileServer-PHP has just been released with many cool new features.

3 May 2016

Rimas Silkaitis 2 min read

Starting today, Postgres 9.5 is now the new default version for all new Heroku Postgres databases. We’ve had hundreds of customers using early beta versions of 9.5 and the feedback has been positive. For many customers, the new UPSERT functionality was the last feature that prevented many of them from moving from other relational databases […] The post Postgres 9.5…

newsdatabasedeveloper toolsheroku postgrespostgres

2 May 2016

Richard Schneeman 11 min read

Rails 5 will be the easiest release ever to get running on Heroku. You can get it going in just five lines: $ rails new myapp -d postgresql $ cd myapp $ git init . ; git add . ; git commit -m first $ heroku create $ git push heroku master These five lines […] The post Container-Ready Rails…

newscloud infrastructureproduct featuresrailsruby