Spatial/GIS support in PHP-CRUD-API

PHP-CRUD-API is a single PHP file that provides an instant powerful and consistent REST API for a MySQL, PostgreSQL or MS SQL Server databases. It now supports spatial/GIS columns and filters. PHP-CRUD-API uses reflection to “detect” the table structure and then provides an API without requiring you to write code. Spatial data is automatically detected (both on input and output) and converted from and to Well-Known-Text (WKT) format. Example If you want to find the country of a specific location: ...

October 24, 2016 · Maurits van der Schee

JavaScript is too expensive to use

Programming in JavaScript is free. Free as in “free speech”, but also free as in “free beer”. There are no fees to pay for platforms, tools or run-times. Still the choice for JavaScript too expensive to make as it increases the cost of development both from a personal and a product point-of-view. The main cause for this is that the ecosystem is changing so rapidly that both people and products are struggling to keep up. ...

October 22, 2016 · Maurits van der Schee

Boolean comparison in JavaScript has a bug

A few days ago, a colleague pointed out some unexpected behavior in JavaScript. After a few hours of investigation this weekend I think I have found the cause: a bug in boolean comparison. This post shows my investigation and will help you to reach that same conclusion. A tricky question What does the following expressions evaluate to? > [] && [] == false true Yes, it is “true”! If you don’t believe me, try it. The question that is addressed in the remainder of this post is: “Really? Why?!” ...

October 16, 2016 · Maurits van der Schee

Free Scala progamming course

I have been doing an online (MOOC) Scala programming course via Coursera. It is a free very well-constructed and challenging course taught by prof. Martin Odersky (the creator of Scala) at the EFPL (École Polytechnique Fédérale de Lausanne) in Switzerland. I have finished it within a few weeks and have now started 2 of the 4 follow-up Scala courses to further sharpen my Scala skills. Free Scala programming courses The following links allow you to sign up for the 5 individual courses for free: ...

October 1, 2016 · Maurits van der Schee

The Tao of Programming

I’ve found a document on the web titled “The Tao of Programming” that contains IT wisdom. It was copied and translated by Geoffrey James who found it on a NASA website with URL “http://misspiggy.gsfc.nasa.gov/tao.html" (not responding anymore). Below you find my three favorite IT wisdoms from the document. 1. Development team wisdom A manager went to the Master Programmer and showed him the requirements document for a new application. The manager asked the Master: “How long will it take to design this system if I assign five programmers to it?” ...

August 29, 2016 · Maurits van der Schee

Developer Anarchy or Extreme Agile

Agile development is all about reducing “waste” (bureaucracy) and optimizing the percentage of development effort in the process. This makes sense, even for larger organizations to improve the effectiveness of their software development. Startups on the other hand need even less process as value creation is really all that matters. For these organizations Extreme Agile (or ‘Developer Anarchy’ as Fred George calls it) may be a good fit. Bureaucracy is a good thing Larger organizations want to have process that ensures consistent quality and reduces risk of failure. Certifications like ISO 9001 and 27001 require that you have written down your process and that you follow this closely. They may not be helped with an Agile process that steers towards a flatter, more efficient organization where roles are combined to ensure minimal procedural overhead (hand-overs). ...

August 22, 2016 · Maurits van der Schee

Ad block detection

More and more people use ad blockers and more and more sites try detect them. Sites say that their visitors are stealing their content, by not “paying” by viewing ads, while visitors claim that sites do not comply with the law and blocking third party contents is the only way to protect their privacy when using the Internet. Nothing against ads I have nothing against ads, but the practices of the “ad tech” industry are appalling. The “ad tech” industry mainly consists of ad “brokers”. The most well-known player in that market is “Google ads”. Some of these brokers (if not all) allow their clients to run scripts on the sites the site owners request ads for. ...

August 19, 2016 · Maurits van der Schee

Using torrents to give back

The use of torrents is controversial, unless you download Linux (disk/install) images. I have recently been trying many Linux distributions (distros) related to the 16.04 release of Ubuntu. For downloading them I have used torrents and I’m proud that my ratio is above 1. This means that I have uploaded more than I downloaded. Below is a list of some of the best Linux distributions that I tried out and my first impression of them. This is my top 10: ...

August 16, 2016 · Maurits van der Schee

Blackhat 2016: videos online

Computerworld released 13 videos (interviews) of the Black Hat USA 2016 conference. The first one (featuring Dan Kaminsky) was so good that I posted the entire list of videos below: Developers need secure coding environments How to pick a lock Risk management: Picking the right tool for the job Black Hat 2016 wrap-up: Same stuff, different year? Why some risk assessments fail Social engineering tricks and why CEO fraud emails work How to wade through the flood of security buzzwords and hype The changing economics of cybercrime Threat actors: Who you should really worry about The advanced security techniques of criminal hackers How much do developers really care about security? Could this hacker’s tool slow down phishing? Why compliance is a necessary evil Blackhat USA 2016 conference in Las Vegas Black Hat is a yearly conference “built by and for the global InfoSec community” as they say on their website. The conference was held in Las Vegas on August 3 and 4. It was the 19th Blackhat USA conference. ...

August 13, 2016 · Maurits van der Schee

Creating a bootable Windows 10 USB on Ubuntu

Whenever I have to help somebody with Windows 10 I find myself making a bootable Windows 10 USB drive. If you are on Windows this is provided via a menu option, but on Ubuntu Linux this requires some commands. This post will explain in detail how to do this. GPT partition table with FAT32 partition Modern systems support UEFI booting and this differs from traditional BIOS in that it does not read the boot sector. Instead it will look in the /efi/ directory in a FAT32 partition of a drive with GPT partitioning. There are no partition flags (like ‘boot’) necessary either. ...

August 10, 2016 · Maurits van der Schee