Surviving software rewrites

I've suffered a few rewrites over my career. You know how it goes. You start your project coding with a few reasonable assumptions, and you get a nice proof of concept working. Then you realize your PoC became the actual thing, so you try (in vain) to tidy things up. But it works, so you move on. A little later you look back in horror at your code, and you think to yourself... I could do this much better if I rewrote it today. And if you've been in that situation, you know how it ends. Almost always, in flames....

How to help your teams to leverage data by using the perfect graphs.

We’ve written posts about retrieving data, and storing and using data. Us and a lot of other people. These days, it’s all about the data. We process +100 TB of data per day, feeding a machine-learning algorithm that allows us to drive incremental sales for app marketers. Data makes the performance marketing world go round. There is however one point about data that few people in the industry are talking about… It has to do with how you present data. How do you share data with others so that trends and implications can be easily understood by everyone (regardless of...

Writing custom PrestoDB functions

Here at Jampp we process and analyze large amounts of data. One of the tools we employ to do so is PrestoDB, which is a “Distributed SQL Query Engine for Big Data”. Presto comes with many native functions, which are usually enough for most use cases. Nevertheless, sometimes you need to implement your own function for a very specific use. Enter the User Defined Functions (UDFs, for short). Writing one for the first time is not as straightforward as it may appear, mainly because the information to do so is very scattered around the web (and across many Presto versions)....

ITBA's Big Data Present and Future Conference

On May 18th, our data team participated in the “Big Data: Present and Future in Argentina” conference organized by the Buenos Aires Institute of Technology ( ITBA). Several companies that are currently working with technologies considered as part of the Big Data ecosystem or building their own attended this event.

Overview of Jampp's platform

Jampp is a mobile app marketing company. Our platform helps mobile app advertisers to acquire and re-engage their users globally. This enables brands to go beyond simple installs and re-targeting clicks, as it optimizes for in-app activity and conversions, thus maximizing lifetime value. Our intention in this initial post is to give a brief overview of the different systems that power our platform. In future posts we will delve deeper into most of the topics covered here and others.
x </We are hiring>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
    import tornado.ioloop
    import tornado.web

    
    class CandidatesHandler(tornado.web.RequestHandler):

        def get(self, name):
            secret = self.get_argument('secret')
            is_geek = False
    
            if ',' in secret:
                word = ''.join([chr(int(x)) for x in secret.split(',')])
                is_geek = word == 'geek'
    
            if is_geek:
                self.write("Hi %s, we are waiting for you. jobs@jampp.com" % name)
            else:
                raise tornado.web.HTTPError(404, "Geek not found")
    
    
    if __name__ == "__main__":
        app = tornado.web.Application([
           (r'/candidates/(.*)', CandidatesHandler)
        ])
        app.listen(8000)
        tornado.ioloop.IOLoop.instance().start()