For a small projects, we needed a flip-counter. I know there is a few already, but they are based on images, not on css.
19 Jul 2012
I am going to split my method to design user interfaces in a series of steps to expose the logic and thoughts behind it.
I thought making recursive template with handlebars was pretty straightforward, but it seems I was wrong.
Also, I didn’t find so much information around the web, so here is my solution.
@futurMe, you’re welcome :)
03 Jul 2012
Recently, I’ve spent a lot of time with a bunch of startup entrepreneurs, most of them are attracted to web startups, and end up building a technical product.
Good for them and good for me: they (often) have good ideas and (sometimes) have a job for me! Nevertheless, I see some similar patterns in most of these startups, and sometimes, these patterns are, I believe, plain wrong. Here they are, and why I think they are wrong.
I ♥ css.
Here I will explain a little trick to make a selectable drop down tree, only in css.
REST defines a way to design an API with which you can consume its ressources using HTTP methods (GET, POST, etc) over URLs. Interacting with such an API basically comes down to sending HTTP requests.
In this article, we’ll see which python modules are available to solve this problem, and which one you should use. We’ll test all modules with this simple test case: we would like to create a new Github repository using their RESTful API.
- Chapter 1 : The beginning
Chapter 1 : The beginning
Since a few weeks, I started my final internship as a webapp developer. In this article, and in the few next, I’ll detail my odyssey starting as a web app novice.
I really don’t aim at writing a few articles that explains every tools that exists nowadays, and which one to choose.
But about ones that I discovered.
And I don’t aim neither at making the most complete tutorial to become a web app developer.
However, I hope it could help some learner, and if you have in mind some amazing tools, let me know I would be happy to discover them.
- The box file generation, where the stuff is bad
- Automatic training, where the stuff gets good
- Open-source code, where the stuff gets awesome
Tesseract is an open-source Optical Character Recognition engine, historically developped by HP and Google, allowing you to extract text information out of images. One of the great features of tesseract is the possibility of training it on a new language, a new set of characters, or even on a particular font. The training procedure is fully described here.
This prodecure is quite long and tedious. That’s why I’ve written a standalone Python wrapper that can take care of the training process for you, in the case where you want to train tesseract on a new font, or characters. This demo is intended for Unix/Linux users.
How to kill a project
Over-engineering is one of the best ways to kill a project. Say you are making a painting software. Performance is critical, right? So you will need GPU acceleration, but you don’t want to restrict the program to one back-end, so you start designing an awesome generic abstraction layer so that the engine can run on top of Cairo, GEGL and your custom OpenGL based back-ends…
21 May 2012
- enumerate(iterable [,start=0])
- isinstance(object, classinfo)
- pow(x, y [,z])
- zip([iterable, ])
In this article, we are going to see a couple use-case examples of some of the Python built-in functions. These functions can prove themselves extremely useful, and I think every Python coder should learn how to use them: they’re fast and well thought.
For each function, I will provide two snippets: one without any built-in function, and the equivalent “pythonic” snippet.
- First step, identify the URL pattern(s)
- Building the spider
- Extracting the data
- Store the results in MongoDB
- Release the spider!
- See code on Github
In this article, we are going to see how to scrape information from a website, in particular, from all pages with a common URL pattern. We will see how to do that with Scrapy, a very powerful, and yet simple, scraping and web-crawling framework.
19 Apr 2012
- About virtualenv
- Combine virtualenv with IPython
- Proof by trial
- Packages and version
I recently got introduced to virtualenv: a “tool to create isolated Python evironments”. It allows to have a fine grain control on the dependencies of each of your python project, and separate each project environment from the others.
11 Apr 2012
I always forget how to precisely use ImageMagick, the documentation being so vast and operators being so numerous. This time I wanted to blur an image, testing different blurring radiuses. This is how to do it.
01 Apr 2012
My laptop can be hot sometimes, especially when I run great python calculations while I watch a movie, tweet with Hotot, chat with a couple of friends and send a couple of emails. (Hotot has nothing to do with this article, but I just think it’s a great twitter client).
31 Mar 2012
I recently stumbled upon a weird error message when playing with class inheritance.
I declared a mother class, with some attributes and methods, and derived a child class from it, with some additional arguments and overridden methods.
29 Mar 2012
- Who am I?
- Facebook. Could I ever tell you how much I hate you?
- Twitter. Why all the love?
- EOR (End Of Rant)
Who am I?
I’m a social guy. Really. I love staying in touch with friends from college and high school, know what they’re up to. I really easily connect with people and love meeting new faces. I’m the typical Facebook user.
29 Feb 2012
- How to handle the webcam ?
- Why doesn’t it work with my webcam ?
- How to use Gstreamer ?
- How do we capture a snapshot ?
- Project source code & Git repository
I recently joined the Strongsteam project for a 6 month internship. Our main goal is to provide some “artificial intelligence and
data mining APIs to let you pull interesting information out of images, video and audio.”
We will be doing a presentation at Pycon 2012, the 9th of March, during the Startup Row weekend.
29 Nov 2011
One of the reason of the awesomness of Linux is the infinite number of nice tools you can install. It thus gives you this “feel like at home” fuzzy feeling. Every time I use a friend’s computer, I can’t help but thinking “Man, it feels strange” : we’re using the same distro, but both our laptops provide different experiences.
I hereby present the tools that make me feel at home.
20 Nov 2011
- What framework should I use ?
- How do I install it ?
- A simple web-service : convert a text to uppercase
- Building the web-service homepage
- Implentation of the uppercase function
- What now ?
The idea of this post is to show you that if you want to implement a web-service, Python could be the way to go. The simplicity of the language syntaxis combined with some good micro-framework results into a powerful combination.
11 Nov 2011
So yeah, I got this shiny new Lenovo X220, and I need a system to install on it. I’m quite lazy, these days, so I usually go for an Ubuntu, to be able to work instantly, and customize the system afterwards. In each Ubuntu release, I found the system to be more and more perfect (as a the Gnome 2 desktop three of four years ago was already perfect, and according to my usage, and the 10.10 release was beyond expectations, once again, for my usage and my hardware). However, having missed the 11.04 release, and installing the 11.10 (to have a recent packages, including a new kernel to use my brand new Sandy Bridge at its full capacity), I found myself kind of forced to use Unity. It lasted four hours, and then I began to search for an alternative. And it was four painful hours.
10 Nov 2011
- What is the problem?
- Profiling : Let’s find the bottlenecks !
- Line profiling
- What about the algorithm ?
- Problem : str.count() is written in C !
- Parallel algorithm
- Can we do better ?
In this post, we’ll see how the program proposed in my previous post can be optimized in term of execution time. The code can be found the project GitHub repository. For those who haven’t read the first article but are interested in code optimization, i’d then advise you to read it first, to understand the causes of the problem.
06 Nov 2011
- Introduction to basic concepts
- Markov chain of order k
- Text Alphabet
- Finding all exiting K-tuples in the source text
- Empirical probabilities of transition
- Random text generation
- Example of generated text with k = 10
- What if we change k ?
If you always wanted to write texts in the way of Monty Python, I have what you need ! In this post, I am going to show you mathematical techniques to analyse a text, in order to randomly generate look-alike texts.
04 Nov 2011
A few months ago, I decided to progressively stop using Google products. They are indeed good products (or were, see Google Reader), but I’m talking about other reasons, here.
Google products, by essence, are practical. You can login with your Google Account (almost) anywhere in the world, and you get a full range of applications to communicate, find information, or work with.