All posts
-
5 Tips for more effective logging
Logging is a critical part of every serious project. If logging is not important in your project – you’re probably doing logging wrong. Here are a few lessons I learned over the years running multiple projects. 1 – Reserve ERROR for errors, and everything that is not a bug in your code shouldn’t be an…
-
Validating Flight Networks for Drones – part 2
In part-1 I described how we validate flight-networks at Flytrex to make sure that no two nodes of a flight network are too close. Now let’s turn our attention to validating that no two edges are too close. First, how does one define “edges being too close”? What is the distance between edges? Here’s a…
-
QA by Child
I recently published a home project I was working on, an app to teach children to read Hebrew. I wrote it originally to help my son learn to read Hebrew. In an early version my son was very excited to play it. He quickly understood the principle – see a word, then tap one of…
-
How to hire a freelancer – 25 useful tips
Over the years I’ve had many opportunities to work with freelancers. Recently a friend had a bad experience looking for freelancers, and I tried to help her find new ones. That prompted me to write a bit about my method. While not completely foolproof, it will increase your chances of finding better freelancers. Defining the…
-
Validating Flight Networks for Drones – part 1
At Flytrex, in order to ensure drones fly only where allowed, and do not collide with each other, they are allowed to fly only in preplanned paths. However, if our goal is to deliver food to backyards, we can’t have a predefined path from our delivery center to each back yard, that would be wasteful.…
-
LearnLang – a small chrome extension for learning the German cases
I’ve been learning German for quite some time now. Some months ago, it came to the point where I was stuck – in order to progress I had to learn the German cases by heart. It’s not a lot of data, and being able to understand it is relatively straightforward, however knowing it actively as…
-
Writing a pandemic simulation
Over the last weekend I felt like programming something fun and easy, so I thought, why not write yet another pandemic/epidemic simulation. So between helping a crying child and preparing lunch, I created simpandemic. It’s small, simplistic, but easy to play with and change parameters. As a toy project, it’s far from perfect. I implemented…
-
How I learned to stop worrying and actually use StackOverflow
So apparently almost all of the developers in the world are using stackoverflow. However many developers just use StackOverflow to lookup answers, and rarely to ask their own questions. Answering other people’s questions is of course rarer still. Up until recently I was the same: I wrote a few questions in StackOverflow, and even answered…
-
Back to writing
So apparently my last blog post was from 2012. That’s quite a bit of time. Since then I’ve: Had a son Sold my startup Desti to HERE Moved with my family to Boston Moved back to Israel, join Cymmetria, first as VP R&D and later as CTO Had another son Left Cymmetria and joined Flytrex…
-
Two bugs don’t make a right
While working on my new startup, we are doing a little bit of reasoning using implications. One of the more curious forms of implications is the negative form: consider the following exaggerated example: a place being kid-friendly implies that it is not romantic. a place being a strip club implies it is not kid-friendly If…