~/devreads

23 Jul 2013

22 Jul 2013

Schakko 1 min read

Yesterday I read the article written by Christoph and thought about updating my current installed CyanogenMod 9 with the current version. Here are the instructions (assuming, you have already CM installed): wget http://108.166.171.36/goodata/50d9ef8310a7cba36225d98a0a37ea26/51ec1e7a/devs/milaq/tenderloin/cm10.1/cm-10.1-20130721-UNOFFICIAL-tenderloin.zip wget http://108.166.171.36/goodata/5dc90f8102df2b869507ff02a7642a07/51ec1e4a/gapps/gapps-jb-20130301-signed.zip Restart the HP TouchPad and sele

linuxwebos4.2androidcyanogen mod

21 Jul 2013

20 Jul 2013

Matthew Green 2 min read

About a year ago I got into a discussion on Twitter with a couple of other cryptographers. The subject: why do so many software developers use lazy cryptography? The instigation for this discussion was actually a piece of malware – a popular, widespread botnet that forgot to use digital signatures to sign its control messages. Though … Continue reading TweetNaCl…

libraries

17 Jul 2013

Matt Cutts 1 min read

I realized that I didn’t mention this widely: my current 30 day challenge (July 2013) is not to read any news or social media. So no Twitter, Google News, Techmeme, Google+, Hacker News, Reddit, Imgur, etc. So if you’re wondering why I haven’t replied to a question, that’s the reason. I might still share a […]

30 days

16 Jul 2013

Scott Turnquest 1 min read

Continuous improvement and product flow are popular themes on the Mingle team. Both internally as we reflect on our own development practices, and externally as we build an agile project management tool that helps teams collaborate and improve together. To help us better understand our flow and gain more insight into ways we can improve, we’ve started to incorporate cycle…

15 Jul 2013

14 Jul 2013

1 min read

Last time we worked through some basic examples of universal properties, specifically singling out quotients, products, and coproducts. There are many many more universal properties that we will mention as we encounter them, but there is one crucial topic in category theory that we have only hinted at: functoriality. As we’ve repeatedly stressed, the meat of category theory is in…

11 Jul 2013

Igor Polishchuk 3 min read

It has not been long since the holy war between SQL and NoSQL database technologies faded, and now we see a new contender, NewSQL, rising. What is it? Will it cause another round of the war? Recently at Bazaarvoice we hosted an informational session on VoltDB, one of the better known NewSQL solutions, with several engineers and […]

talksnewsqlvoltdb

10 Jul 2013

9 Jul 2013

1 min read

The first Music Hack Day — organized by our very own Dave Haynes — was held in July 2009 in London, UK. Since then there have been over 3…

8 Jul 2013

Dave Cheney 3 min read

This post is a compliment to one I wrote in August of last year, updating it for Go 1.1. Since last year tools such as goxc have appeared which go a beyond a simple shell wrapper to provide a complete build and distribution solution. Introduction Go provides excellent support for producing binaries for foreign platforms […]

goprogrammingcgocross compilationcross compile

Madhurranjan Mohaan 1 min read

I am part of this project where we run a pretty big CI Build system. We had been facing a few issues with it and we wanted to do some work around Build Monitoring to improve the system as a whole. The next couple of blogs (written in collaboration with Rohith Rajagopal) will talk about the problems and approaches that…

7 Jul 2013

1 min read

Computed Properties By design, Handlebars templates don’t allow complex expressions. You are given an {{#if}} block helper, but it can only evaluate whether something is “truthy” (aka true, a non-empty string or array or other value that is not undefined or null.) For example, you can’t do something like this: {{#if (eyes.length == 1) && (horns.length == 1) && flies…

5 Jul 2013

1 min read

Problem: Given a data stream of unknown size $ n$, pick an entry uniformly at random. That is, each entry has a $ 1/n$ chance of being chosen. Solution: (in Python) import random def reservoirSample(stream): for k,x in enumerate(stream, start=1): if random.random() < 1.0 / k: chosen = x return chosen Discussion: This is one of many techniques used to…

3 Jul 2013

Robin Copland 1 min read

It was just a few years ago that I read numerous articles predicting the inevitable death of retail stores. This doom and gloom scenario played out across most of the trade publications leaving retailers scratching their heads in wonderment and worried that if they didn't do something (they didn't know what) they would be overtaken by their cooler, lower cost,…

2 Jul 2013

1 Jul 2013

Bryan Chagoly 2 min read

At Bazaarvoice, we strongly believe that our people are our most important asset. We hire extremely smart and passionate people, let them loose on complex problems, and watch all the amazing things they create. We had another opportunity to see that innovation engine in full effect last week at our internal technical conference and 2 […]

conferencesbigdata

Matt Cutts 1 min read

Back in the 90s, the heart of a computer was the CPU. The faster the CPU, the better the computer was–you could do more, and the speed of the CPU directly affected your productivity. People upgraded their computers or bought new ones whenever they could to take advantage of faster CPU speeds. I remember the […]

gadgets hack

1 min read

The Go language is one of my favorite programming languages. However, sometimes doing simple things can seem a bit harder than it should. However, most of the time, the problem is just to find out how to do things the easy way. While Go’s documention isn’t bad, the real key to finding out how to do things is often to…

30 Jun 2013

Dave Cheney 4 min read

This post continues a series on the testing package I started a few weeks back. You can read the previous article on writing table driven tests here. You can find the code mentioned below in the https://github.com/davecheney/fib repository. Introduction The Go testing package contains a benchmarking facility that can be used to examine the performance […]

goprogrammingbenchmarktesting

29 Jun 2013

28 Jun 2013

Milo Simpson 2 min read

We are pleased to announce a new open source contribution, a Java based JSON to JSON transformation tool named Jolt. Jolt grew out of a BV Platform API project to migrate the backend from Solr/MySql to Cassandra/ElasticSearch. As such, we were going to be doing a lot of data transformations from the new ElasticSearch JSON […]

general announcementsopen sourcejoltjsonxml

27 Jun 2013

26 Jun 2013

Matthew Green 7 min read

About a year ago I wrote a short post urging Apple to publish the technical details of iMessage encryption. I’d love tell you that Apple saw my influential crypto blogging and fell all over themselves to produce a spec, but, no. iMessage is the same black box it’s always been. What’s changed is that suddenly people seem to … Continue…

appleimessagemessaging

1 min read

Some time ago, I posted here about a simple project that I’ve done in my post-graduation classes. Since I need it in other projects, and also some friends ended up using it in small projects, I decided to evolve it a little bit.

1 min read

Continuing in the same spirit of shameless self-promotion, here’s some recent Luigi press: Reddit thread A Guide to Python Frameworks for Hadoop (slides from the NYC Hadoop User Group) This presentation from the Open Analytics NYC meetup about how Foursquare uses Luigi Luigi is in the middle of a pretty massive refactoring of the visualizer. David Whiting at Spotify just…

1 min read

Engineers love to improve things. Refactoring and optimizations drive us. There is just a slight problem: we often do that in a vacuum. Before optimizing, we need to measure. Without a solid baseline, how can you say that the time you invested in making things better wasn’t a total waste? True refactoring is done with a solid test suite in…

Srijayanth Sridhar 1 min read

People arguably spend as much time analyzing test failures as they do writing tests. This necessitates good functional test reports. A good functional test should not merely report where your test failed. It should give you all the information necessary to be able to make your analysis.

24 Jun 2013

23 Jun 2013

1 min read

A few days ago, I was wondering if using Go would be worth it when developing new web APIs. I obviously knew that Go would be faster than Ruby, but I wasn’t sure how much faster. I also wondering about the amount of work required to write get a full API implemented. I therefore wrote the same web API in…

22 Jun 2013

Ernest Mueller 3 min read

Greetings all! In the world of SaaS, wiser men than I have referred to Operations as the “Secret Sauce” that distinguishes you from your competition. As manager of one of our DevOps teams, I wanted to talk to you about how Bazaarvoice uses the cloud and how we engineer our systems for maximum reliability. You […]

talksawsinfrastructure

jonskeet 5 min read

It seems to be quite a long time since I’ve written a genuine "code" blog post. Time to fix that. This material may well be covered elsewhere – it’s certainly not terrifically original, and I’ve been meaning to post about it for a long time. In particular, I remember mentioning it at CodeMash in 2012. … Continue reading Array covariance:…

benchmarkingc#designwacky ideas

21 Jun 2013

jonskeet 7 min read

This year before NDC, I wrote an article for the conference edition of "The Developer" magazine. Follow that link to find the article in all its illustrated glory (along with many other fine articles, of course) – or read on for just the text. Back when I used to post on newsgroups I would frequently … Continue reading But what…

general

20 Jun 2013

19 Jun 2013

1 min read

Just open sourced hdfs2cass which is a Hadoop job (written in Java) to do efficient Cassandra bulkloading. The nice thing is that it queries Cassandra for its topology and uses that to partition the data so that each reducer can upload data directly to a Cassandra node. It also builds SSTables locally etc. Not an expert at Cassandra so I’ll…

1 min read

Important Update (May 25, 2014): Google has started parsing and indexing Javascript. The approach of this article is to use <noscript> tags but Google will likely ignore those now. We upgraded our site to sniff Google and other popular search engines and serve our simple content that way. However, in the future it might not be a concern as Google…

18 Jun 2013

Matt Cutts 1 min read

Folks at Google get cold-call emails out of the blue just like everybody else. Here’s an email that a colleague of mine got recently: I was on your website www.google.com and wanted to shoot you a quick note. I think I can make a few changes (aesthetically and/or SEO – wise) to make your site […]

google seo

17 Jun 2013

Matthew Green 8 min read

Over the past week or so there’s been a huge burst of interest in encryption software. Applications like Silent Circle and RedPhone have seen a major uptick in new installs. CryptoCat alone has seen a zillion new installs, prompting several infosec researchers to nearly die of irritation. From my perspective this is a fantastic glass of lemonade, if one made…

messagingnsa

16 Jun 2013

1 min read

Problem: Determine if a number is prime, with an acceptably small error rate. Solution: (in Python) import random def decompose(n): exponentOfTwo = 0 while n % 2 == 0: n = n/2 exponentOfTwo += 1 return exponentOfTwo, n def isWitness(possibleWitness, p, exponent, remainder): possibleWitness = pow(possibleWitness, remainder, p) if possibleWitness == 1 or possibleWitness == p - 1: return False…

2 min read

We had an unconference at Spotify last Thursday and I added a semi-trolling semi-serious topic about abolishing documentation. Or NoDoc, as I’m going to call this movement. This was meant to be mostly a thought experiment, but I don’t see it as complete madness. To be clear, I’m not talking about comments in the code here. I think those are…

15 Jun 2013

1 min read

Recently I got together with some local developers to discuss client side MVC frameworks. We ended up discussing many of the differences between AngularJS and Ember. Discourse is an Ember application and has been since the first prototype, so I have a lot of experience with it. However, it became clear during the conversation with my peers that there was…

14 Jun 2013

1 min read

Our recent "Best Card Wall" competition highlighted the varied ways in which the card wall is used for planning, estimation, visibility, tracking, decision making and reporting activities. In this series, we’ll see how Mingle's card wall can help you create many different views displaying customizable information for various purposes, levels and roles.

13 Jun 2013

Robin Copland 1 min read

It seems that every week I'm reading about another retailer who has formed an innovation lab or has acquired a startup to help them figure out innovation in the retail space. The latest round was the recent announcement that Target started its own innovation lab in San Francisco. This is in line with the trends of other big retailers such…

12 Jun 2013

Thoughtworks 1 min read

Why are we mapping that value stream? As far as I can tell, the original problem that Toyota was addressing with "value stream mapping" (VSM) was to understand material and information flow in order to improve production lead-time.

11 Jun 2013

10 Jun 2013

1 min read

There has been a lot of news recently on government surveillance of its citizens. The biggest two that have pervaded my news feeds are the protests in Turkey, which in particular have resulted in particular oppression of social media users, and the recent light on the US National Security Agency’s widespread “backdoor” in industry databases at Google, Verizon, Facebook, and…

Ben Butler-Cole 1 min read

We treat all our virtual servers as immutable. When we upgrade our system we create brand new servers and destroy the old ones, rather than upgrading them in-place. This is a logical extension of the phoenix server approach in which servers are regularly recreated from scratch. Our adoption of immutable servers was inspired by an anecdote that when physical servers…

9 Jun 2013

Eewei Chen 1 min read

Many new media design, advertising and games development agencies struggle to factor in graphic and experience design effectively into their agile software development methodologies. Abstract Nowadays, it is hard to justify a large part of a project’s design budget on three months creative direction, where screens of every potential stage of an application are mocked up before development even begins.…

6 Jun 2013

5 Jun 2013

4 Jun 2013

Scott Turnquest 1 min read

Ever since the Mingle team started working on its new cloud offering we made a conscious effort to improve our ability to continuously deliver valuable features and enhancements to our production environment. I expected that frequent deployments, tons of automation and lots of learning about Amazon’s AWS would come with the territory - and it did. What I didn’t expect…

3 Jun 2013

1 min read

I’ve been spending a little less time on my blog recently then I’d like to, but for good reason: I’ve been attending two weeks of research conferences, I’m getting ready for a summer internship in cybersecurity, and I’ve finally chosen an advisor. Visions, STOC, and CCC I’ve been taking a break from the Midwest for the last two weeks to…

1 min read

I work in a company that has an entirely MS-based network, which means, all that domain login crap and everything that comes with it: outlook, MS Communicator, proxies, monitoring and etc.

2 Jun 2013

1 min read

I’ve been obsessed with Wikipedia for the past ten years. Occasionally I find some good articles worth sharing and that’s why I created the wikiphilia Twitter handle. Just a long stream of stuff that for one reason or another may be interesting. It’s also a bunch of friends posting links. Anyway, the tragedy is that there’s 800 tweets but only…

1 Jun 2013

1 min read

Last time we defined and gave some examples of rings. Recapping, a ring is a special kind of group with an additional multiplication operation that “plays nicely” with addition. The important thing to remember is that a ring is intended to remind us arithmetic with integers (though not too much: multiplication in a ring need not be commutative). We proved…

kevin 3 min read

I really enjoyed Sam Saffron's post about eliminating trivial inconveniences in his development process. This resonated with me as I tend to get really distracted by minor hiccups in the development process (page reload taking >2 seconds, switch to a new tab, etc). I took a look at my development process and found a few […]

codeimprovement

31 May 2013

Michael Carroll 1 min read

This tutorial shows you how to build a real-time stats streaming server for the purpose of multiplayer games or anything that involves statistics.

Michael Carroll 1 min read

This tutorial shows you how to build a real-time stats streaming server for the purpose of multiplayer games or anything that involves statistics.

1 min read

The Discovery page, the new start page in Spotify, is finally out to a fairly significant percentage of all users. Really happy since we have worked on it for the past six months. Here’s a screen shot: Some cool features Artist/album/track recommendations based on stuff you’ve listened to before New releases recommendations Concert recommendations Third party news stories There’s a…

30 May 2013

Matt Leibowitz 4 min read

Last summer I was given an internship opportunity in the R&D department of Bazaarvoice as a software engineer. Having only finished my freshman year in college, I had no idea what to expect from a tech company of this size. I would have never guessed that on my first day I would be handed a […]

internships

29 May 2013

27 May 2013

26 May 2013

1 min read

Trade offs As a developer you’re constantly faced with issues of choice: What library is best? What framework is best? What platform should we deploy on? Most of the time there isn’t a clear winner. The decision you make comes down to a series of trade offs. Do you want to optimize for developer happiness or performance? Do you care…

24 May 2013

1 min read

Previously in this series we’ve seen the definition of a category and a bunch of examples, basic properties of morphisms, and a first look at how to represent categories as types in ML. In this post we’ll expand these ideas and introduce the notion of a universal property. We’ll see examples from mathematics and write some programs which simultaneously prove…

23 May 2013

Matt Cutts 1 min read

We started rolling out the next generation of the Penguin webspam algorithm this afternoon (May 22, 2013), and the rollout is now complete. About 2.3% of English-US queries are affected to the degree that a regular user might notice. The change has also finished rolling out for other languages world-wide. The scope of Penguin varies […]

google seo

Ashwini Ingle 1 min read

When I joined our employee web portal team as a quality analyst in mid-Jan, I was tasked to “automate ASAP and As Much As Possible”. Sounds familiar?

22 May 2013

Bonna Choi 1 min read

Out of many roles on an Agile team - developer, tester, project manager or product manager, the role of the business analyst is probably the one whose “existence” on the team is most frequently challenged. The role of a BA is often questioned, not the quality of work, but the “perceived” value delivered for the team - by clients. Frankly…

21 May 2013

2 min read

I was browsing around on the Internet and the physics geek in me started reading about Fermat’s principle. And suddenly something came back to me that I’ve been trying to suppress for many years – how I never understood why there’s anything fundamental about the principal of least time. The principle of least time states that the light will travel…

20 May 2013

jonskeet 3 min read

Resources: Amazon, Barnes and Noble, Play Books The book’s web site (O’Reilly) – downloads, errata etc A while ago I was attending one of the Developer, Developer, Developer conference in Reading, and I heard Alex Davies give a talk about actors and async. He mentioned that he was in the process of writing a short … Continue reading Book Review:…

asyncbook reviewsbooksc# 5

Juliano Bersano 1 min read

I have done 3 projects in a row where we did not use story points and simply counted stories. I’m a big advocate of that approach. Let me explain why. I'm an estimation geek who loves the nuances of estimation, and have used function points, use case points, COCOMO, and story points for over 10 years. Over time, I’ve become…