Skip to main content


Showing posts from 2018

GitLab Goes Serverless

Functions-as-a-service (FaaS) is a pit where the big names collide.It is the future of enterprise computing as the cloud provider handles the underlying infrastructure, letting the client focus on its core business of designing applications. full article on i-programmer

C# 8, What's Coming

C# never ceases to evolve. Starting out as a copycat mix of Java and C++, selecting their best parts, the language has since walked its own way, innovating by itself. With version 8 on the horizon, let's have a look at the strongest candidates among the proposals for the finalized draft. Nullable reference types Once, value types couldn't be null, but that changed with the introduction of  System.Nullable in C# 2, although the syntactic sugar of the '?' modifier which renders byte? and System.Nullable interchangeable is what stuck the most. full article on i-programmer

The Perl Renaming Debate Highlights Tensions

The name "Perl" lies at the heart of the drama developing between the two languages, Perl 5 and Perl 6. This is a long way from the once desirable unification  and moves towards breaking the ties between former sister languages now emerging as total foes. But let's take it from the beginning. Back in 2012 when Parrot was alive, when I interviewed him about  Perl 6 and Parrot,  Moritz Lenz answered this question: full article on i-programmer

Connecting To The Outside World with Perl and Database Events

There are times when I want my database to be able to talk to the outside world, rather than the other way around. Let's explore some scenarios where this ability would come handy before implementing a solution using Ingres RDBMS and Perl. You can see the result in action and the code is available to replicate it with any RMDBS. For example, the database ought to  alert  an external entity: A. in a Drugstore, whenever an item's stock decreases beyond a fail-safe limit B. in a Post Office, whenever an item arrives and its barcode is scanned C. in a Hospital, whenever a patient is diagnosed with a condition D. in a Hospital, whenever a patient is admitted into the Hospital or is prescribed medicine full article on

Sourcegraph Powers Up Your Code Repository

Sourcegraph is a code navigation engine that non-destructively rearranges your repository's structure to organize it, as well as powering it up with code intelligence and advanced search capabilities. Best of all Sourcegraph has just gone open source which means that you can deploy it on your own servers to power up your private repositories. full article on

Hacktoberfest 2018 - Celebrate Open Source!

Hacktoberfest is an annual event sponsored by DigitalOcean in partnership with GitHub and Twilio and while "Hacktoberfest" might sound or give the impression of something doable only by very experienced hacker programmers, in essence, it's just a wrapper around having to submit 5 Pull Requests to any Github hosted repository and earn some swag in return.  As such the aim is purely motivating people to contribute to open source rather than to run a lucrative competition.For the prize to be claimed, a limited edition t-shirt and a few stickers, you have to make five pull requests (PRs) between October 1–31 in any timezone and to any public repo on GitHub. The chances of winning are good as this year the first 50,000 to complete all 5 PR's win. full article on

ReactProto, Rapid Prototyping In React

ReactProto is a rapid application prototyping tool that bridges the gap between developers and designers. Designers hand over their static mockups. which developers feed into ReactProto to generate the corresponding boilerplate React components. It's that aspect of Visual Design that can speed up development through generating code, especially efficient when having to tackle hierarchies of nested components. In contrast to coding them by hand, when using ReactProto the code generator consumes static mockups and emits React components. It's use is simple and can be summarized as: full article on i-programmer

MakeCode and CODAL Ease The Way To Programming Electronics

Ever wanted to program electronics for either fun or profit but thought that the entry barrier was too high? Are you a teacher, a parent, who wanted to teach kids tangible coding but can't figure out where to start from? If the answer is yes, you'll find MakeCode and CODAL a much more accessible way to break into the world of electronics. MakeCode by Microsoft, is a web app in which you can write code for micro controllers in a high level language, either block-based Blocky or TypeScript, while CODAL (Component-Oriented Device Abstraction Layer) by Lancaster University is an optimized C++ runtime which supports higher-level languages and contains  drivers for devices. Initially they were just for the BBC micro:bit but other targets include Arduino Uno or BrainPad. full article on

Deep Angel-The AI of Future Media Manipulation

Undeniably, we live in the era of media manipulation. Such powerful and accessible tools exist today that nearly everyone can do it. Now add to this collection Deep Angel, an artificial intelligence that can erase objects from photographs and videos. I was notified of  Deep Angel    around the time I was watching  Kill Switch , a futuristic and dystopic movie about our Earth getting cloned in order to suck the resources of the cloned planet, something that would sustain our world's energy needs for at least another millennium. To cut a long story short... full article on - JavaScript Enabled AI

Is JavaScript eating the world? Yes, with AI being heralded as the next major conquest in the language's boundary expansion. is a website that aims to serve this cause by becoming a host to the most inspiring examples of AI & JavaScript from across the web. Set up by the organizers of the  "AI JavaScript London" , a meetup interested in the impact of AI in all kinds of applications, the most recent being on  "Art,Music and Artificial Intelligence" ,  hosts projects which range from AI drum machines to NLP and using your voice for powering a calculator. full article on i-programmer

Perl-Framework Mojolicious in Version 8.0 erschienen - (German version on Heise Developers)

Dass Mojolicious nun auf einer Event-Schleife à la Node.js basiert, mag das hervorstechendste neue Feature des Webframeworks sein. Das hervorstechendste Merkmal des neuen Release ist laut Nikos Vaggalis auf " I Programmer ", dass Mojolicious nun auf einer Event-Schleife à la Node.js basiert. Dann ist auf die Einführung des "Mojo::Promise"-Moduls hinzuweisen, einer Perl-Implementierung des Promises-Konstrukts, die die Callback-Mechanismen für asynchrone Operationen vereinfacht und erweitert. Außerdem gibt es eine wesentliche Änderung im Core-Prozessmodell und zwar, dass Arbeitsprozesse eine beliebige Anzahl von Unterprozessen hosten können, um die Ausführung langsamer Operationen zu beschleunigen. full article on Heise Developers

Perl for the Web: Mojolicious 8.0 Released

Far gone are the days when you wrote Perl for the web in just CGI. Dancer, Catalyst and Mojolicious are the modern ways of going about it, with Mojo's version 8.0, code-named "Supervillain", being released just last week. Each framework has its own distinct advantages, with Dancer being considered the most lightweight and with the lowest entry barrier; and Catalyst being considered the most heavyweight and with a steep learning curve. Mojo floats somewhere in the middle, its own strongest point being its claim to be a  "Real time Web framework"  due to its Websockets and non-blocking/async capabilities provided out of the box. With that said, let's discover what Mojo's newest version has to offer. The most outstanding feature, given that Mojo is based on an Event loop à la NodeJS, is the introduction of the  "Mojo::Promise"  module, a Perl implementation of Promises that simplifies and enhances the asynchronous operations callback mechan

Is Java Still Free?

Given Oracle's attempts to regulate Java's use, it's no wonder that the debate between JDK and OpenJDK has led to doubt, that for some that even meant considering to jump the ship. Fortunately, the Java Champion Community, guardians of all things Java, has reacted to this awkard situation. Its attempt to clear up the uncertainty is by publishing a statement with the unambiguous title  Java Is Still Free . The document is work in progress getting updated as developments evolve, and comes in two versions; the short one that jumps straight to the takeaways, and the longer that gets behind the scenes before making any recommendations. full article on

Sharpen Your Hacking Skills With CTFLearn

CTFlearn began as a simple project by the members of a local school's CTF club in order to have a playground for testing their skills. V2 of the site is currently undergoing a beta, but is available to the public. Let's find out what this revamped version has to offer. While CTFlearn might have started as a little local project, it wasn't long, due to a high level of interest, before it started to overrun its local boundaries to appeal to a much greater audience. The simple and easily navigable layout has certainly played a role in the site's popularity. full article on 

Sorbet - Making Ruby Statically Typed

Stripe's Sorbet type checker aims to achieve what Typescript has done for JavaScript; inject static typing to a dynamical language. But let's start with the basics; what's so wrong with dynamically typed systems that statically type ones, full or partial, are so desirable. Back in early 2010, I Programmer ran my in-depth article series,  Type System Demystified  ( Part 1 ,  Part 2 ,  Part 3 ) on the big face-off between types systems (static vs dynamic, strong vs weak), detailing both their hindrances as well as their merits. While things have moved on .. full article on

Perl 5.28 Released

Perl 5.28 doesn't introduce radical changes, but mainly focuses on optimizations, performance improvements, security fixes, cleanups, module upgrades and removals. We've combined this version's delta document with SawyerX's talk at TPC2018 in Salt Lake City to provide a more holistic summary of noteworthy changes. Starting up with the new features,Perl 5.28 has been upgraded to support  Unicode version 10.0 , which now even incorporates the Bitcoin symbol! .. full article on

Learn to Code With Games

Play games and learn something while you are at it? Even better, rather than feeling guilty about wasting time playing games, you are in fact "studying"? With so many code playgrounds out there, here are three of the latest, and free, offerings. The first one is  JSRobot  and teaches Javascript by letting you control a little Robot. It is targeted at total beginners in coding as well as the Javascript language and therefore cover the very basics, such as the Console:... full article on

Learn To Program the Blockchain With Devslopes For Free

It is strongly believed that AI together with the Blockchain is the upcoming revolution in technology. Professionals in these areas are expected to be highly sought after. Recognizing this need, Devslopes aims to transform any beginner to a professional and currently has a very attractive offer that amounts to free training. We've recently looked into the Blockchain technology and its future in watching and reviewing the  EU Blockchain Observatory and Forum's Blockchain AMA  which revolved around the Blockchain's  applications on a pan-European level. Since the EU Commission is so fond of this novel technology, you certainly get the feeling that you have to do something about it to prepare for a Blockchain-powered future. Devslopes is one of the most recently founded .... full article on

Actian X/Ingres - Working around the limitations of the GLOBAL TEMPORARY/SESSION TABLES

An attempt to work around the Limitations of Database Procedures when used with Global Temporary Tables Successfully tested on  Ingres II 9.2.0 (int.lnx/118)NPTL On Ingres II 10.0.1 (a64.lnx/100)NPTL returns error: E_SC0206 An internal error prevents further processing of this query.     Associated error messages which provide more detailed information about     the problem can be found in the error log, II_CONFIG:errlog.log Code on GitgHub

EU Blockchain Observatory and Forum Blockchain AMA

The EU Blockchain Observatory is a recent initiative, launched in February 2018, which is backed by the European Commission with the primary aim of educating the EU's public on Blockchain technology.This very interesting AMA really served that purpose by answering  the public's challenging questions, which were mainly tweeted under the #AMABlockchain hashtag. Educating the public aside, the forum's two other objectives are to accelerate the application of this technology at a pan-European level and to push for cooperation between member states to materialize uses cases and scenarios backed by Blockchain. The AMA started smoothly tackling lightweight questions, such as  "what is the Blockchain technology?"  or  "where is a Bitcoin stored?" , (answer:  "on every computer in the Blockchain network" ), continuing with what a blockchain Node is and what does a Miner do. Other questions revolved around which Consensus algorithms does a blockchai

European Perl Conference In Glasgow, Massive Summer Event

Yes, with more than 50 talks, workshops and networking events, YAPCEU:: 2018 promises to be massive. Not  everything will be strictly about Perl 5 and 6, sessions on ethics, career building and recruiting are also included. The workshops, which include training most notably by GeekUni and Dave Cross, have been finalized and are: Perl related: GeekUni - "Using databases with DBIx::Class" , 240 minutes long, requires knowing both Perl and SQL GeekUni - "Object Oriented Perl 5" , a 240 minutes long session to transcend from the default minimal OO system to Moo and Moose DrForr - "Introduction to Perl 6" , a whooping 540 minutes long session on Perl 6 fundamentals Career/Character building: full article on

Single Page Application with Perl Dancer

Of course Gabor needs no introduction, but it's worth mentioning that his is a later attempt of publishing a book on the Dancer framework in general. The first one, which I covered in  Help Kickstart First Ever PerlDancer Book , was initiated by the Dancer's core devs themselves who unfortunately couldn't generate enough traction therefore the fund raising campaign failed. Fortunately this second campaign by Gabor proved successful to the point of exceeding its financial goals. From the start you sense that it's going to be a very practical and hands-on tutorial as it doesn't waste any time and jumps straight to setting up the development environment using Vagrant and a Linux VM.Interesting choice considering that nowadays most use Docker, but probably done so because Docker is mainly directed to containerization of applications and not to that of full blown OSs. So after setting up the environment we are next suggested two ways of installing Dancer.The first o

3 take-aways from Jon Skeet’s Hashnode AMA

It’s a question that’s been bugging me now and then.When I heard that Jon Skeet, a Stackoverflow core member, book writer and educator, as such the perfect authoritative source to answer this question, was going to give an AMA on March the 29th over at Hashnode, I jumped right in: Is Stackoveflow creating hordes of copy and paste programmers, hindering truefull education or is it the other way around, that is complementing education? JS: I expect it’s a mixture,........ full article on Medium

An alternative source of acquiring job worthy skills : The Sandwich course

Since employers expect a candidate with both a diploma and hands-on experience, the problem has always been how to acquire that work experience while at the same attending college.The Sandwich scheme then, in in effect in many UK Universities, is a successful attempt in compromising those two requirements. Usually a BSc diploma lasts for 3 academic years.In many cases you have the option to go for the Sandwich scheme.This adds another academic year because you now use the 3rd year to gain real work experience instead of spending it at the premises of the University.That way you “gain the skills that employers want so you’ll be prepared for the workplace when you graduate”. The transition to the sandwiched year...... full article on Medium

Udacity's Android Developer Nanodegree Updated To Android Architecture Components

Udacity's Android Developer Nanodegree gets up to speed with Android Architecture Components with an important update. This recognizes that the components are growing in popularity and can  even be considered the modern way of doing things on the platform. This new class talks us through the four subtopics that comprise the Architecture Components: 1. The Room persistence library  - an ORM for easier interaction with a backend database. 2. LiveData  - based on RxJava and the Observer pattern so that the UI can be  automatically updated upon any change happening to the underlying data store. 3. ViewModel  - Caching and preserving data/state during configuration changes. 4. Lifecycle Aware Components  - to make objects that haven't got a lifecycle (as defined by the platform) to become lifecyle aware. full article on

Book Review:Single Page Application with Perl Dancer

Of course Gabor needs no introduction, but it's worth mentioning that his is a later attempt of publishing a book on the Dancer framework in general. The first one, which I covered in  Help Kickstart First Ever PerlDancer Book , was initiated by the Dancer's core devs themselves who unfortunately couldn't generate enough traction therefore the fund raising campaign failed. Fortunately this second campaign by Gabor proved successful to the point of exceeding its financial goals. From the start you sense that it's going to be a very practical and hands-on tutorial as it doesn't waste any time and jumps straight to setting up the development environment using Vagrant and a Linux VM.Interesting choice considering that nowadays most use Docker, but probably done so because Docker is mainly directed to containerization of applications and not to that of full blown OSs. full review on

Udacity Kotlin BootCamp for Programmers

Undoubtedly there is a lot of hype surrounding the new kid on the block, Kotlin. Even so, it is currently welcoming ever increasing waves of Java migrants to the extent that starting out with Java for the Android platform is about to become outdated. But why Kotlin? Kotlin is an expressive programming language with lambdas, coroutines, properties, object and functional constructs and advanced features all built in. It is statically typed, just like Java, and seamlessly interoperates with any given Java library in order to leverage the vast functionality found in Java's ecosystem. full article on

Udacity Android Developer Nanodegree Capstone Project - "Smart Device Seeker"

"Smart Device Seeker For those interested in buying or looking for more information on a smart device" Released app to the Google Play Store

Insider's Guide to Udacity Android Developer Nanodegree part 7-Full Stack Android

Yes, the final stage of the Capstone and graduation, the endless sense of relief. It was challenging, it was hard, but in the end everything worked out alright and I gained my Android Developer Nanodegree. So what did I think of the whole experience. If you just want to know my final thoughts on a year-long course of study turn to the last page. At the final stage it wasn't just a Capstone project that spanned the narrow boundaries of developing for Android only. It also required work on the infrastructure as the Android app would have to communicate with the backend Digital Ocean VPS hosting the data. So in this final part of the  Insider's Guide To Udacity Android Developer Nanodegree   I'm not just going to go through the building of a mobile app, looking into the topics of Fragments, Loaders, AsyncTasks, Retrofit network calls, GSON parsing and Memory leaks, only.I'm also going to go through the work that took place server side, looking into Web based MVC, HTML