Skip to main content


Showing posts from 2016

Cure53 XSSMas Hacking Challenge 2016 Underway

Cure53 XSSMas Challenge, initiated in 2013, is a recurring hacking event, where those challenged have to solve a complex security puzzle in order to win money and fame, attempting to hack a web site in any means necessary.

'Any means', does not preclude rules of engagement. For example the 2015 challenge required hacking without user interaction, i.e setting a XSS trap and waiting for it to be activated as in the case of blind XSS.

So as not to spoil your fun with this year's challenge, which has been posted today, here we'll look back to last year's challenge required hackers to begin with index.php and progressively break through index3.php in order to obtain the price.
What was actually required is nicely summed up in:
Find a way to bypass the XSS filters of all browsers by realizing, the string

Project Wycheproof Reveals Bugs In Popular Crypto Libraries

Google has released Project Wycheproof, a set of security tests that check cryptographic software libraries for known weaknesses. Having developed over 80 test cases more than 40 security bugs have been uncovered.

In order to have good cryptography two ingredients require to be in place. The first is the strength of the cipher primitive itself. This is a property that  classifies it as suitable or not to build an application on. For example in the TLS protocol, documented in "SSL and TLS Deployment Best Practices-Use Secure Cipher Suites" not all ciphers are recommended for use. In that list for example, we find some obsolete cryptographic primitives that are not secure and must be avoided:

full article on i-programmer

OpenAI Universe - New Way of Training AIs

Until now, the way a neural network worked, was to supply it with millions of pre-classified data, in the so called supervised learning scheme, which resulted in neural networks only learning what we've instructed them to do.

But there's also another technique, that of reinforcement learning where you let the AI  discover by itself what it's supposed to do, without prior knowledge of its surroundings or any other data fed to it.
Microsoft was one of the first to employ this technique in a gaming environment, in trying to make a Minecraft character climb a virtual hill in the so called AIX Minecraft Project. In there, you let the algorithm explore the Minecraft world it was dropped in, let it freely move and interact with its surroundings, and force it to learn by rewarding it when it does something right so that it understands the goal of the game, the goal that it should be aiming for. Of course for us humans it's easy to see that we must climb that …

IBM Watson and Project Intu for Embodied Cognition

Watson raises the bar to the quest of achieving autonomous general AI, in yet  another advancement that this time looks like having an emphatic impact on the industry as a whole.
The new buzzwords that Watson introduces are embodied cognition and behaviors, which act as self-contained components but work together on transforming the transaction that takes place between the human operator and the machine, be it a device, robot, or anything else capable of carrying an intelligent software agent, into a state of conversation or deeper interaction .

full article on i-programmer

What Universities Can Learn from Udacity’s ‘Gig Economy’ Service

Two weeks ago, Udacity launched a program to connect graduates from its programs with short-term work from potential employers. Called Blitz, the service lets companies propose a project, and then Udacity provides a cost estimate and puts together a team of alumni engineers to complete it. Once the project is finished, companies have the option to hire “Blitzers” full-time. 
The offering is one way to help Udacity deliver on its job-placement promises. The company offers a money-back guarantee to students who complete its nanodegree programs—bundles of classes in app and web development and engineering. Students are ensured a job within six months of graduating or Udacity will refund their tuition. (The company defines “job” as full- or part-time and freelance work.)
full article on

JetBrain's Project Rider Cross-Platform IDE

Project Rider, JetBrain's new cross-platform IDE brainchild for coding in most languages used in .NET development, has been made available for a second round of EAP (Early Access Program).
In contrast to the closed and private EAP six months ago, this one has been made public and accessible to everyone within just a click's reach with no questions asked, and no need to fill web forms with personal details.

I Programmer covered Rider's initial launch back in January, and found that it was an intriguing project bringing together a number of versatile components. But what is meant by that?
As far as Rider's front end goes, it is based on the IntelliJ platform and written in Kotlin, a language JetBrains wrote for its own in-house needs. Kotlin turned out so 'pragmatic' that  close to ten JetBrains products, including Rider, IntelliJ IDEA and YouTrack are now using thousands of Kotlin lines of codebases

full article on i-programmer

IBM Watson and Education in the Cognitive Era

IBM's seemingly ubiquitous Watson is now infiltrating education, through AI powered software that 'reads' the needs of individual  students in order to engage them through tailored learning approaches
 This is not to be taken lightly, as it opens the door to a new breed of technologies that will spearhead the education or re-education of the workforce of the future.

As outlined in the 2030 report, despite robots or AI displacing a big chunk of the workforce, they will also play a major role in creating job opportunities as never before.In such a competitive landscape, workers of all kinds, white or blue collar to begin with, should come readied with new, versatile and contemporary skills.

full article on

SQL Server on Linux, Love or Calculated Move?

Five years ago, who would have imagined Microsoft's U-turn into the arms of Linux arms, especially after Microsoft referred to Linux and Open Source being synonymous with cancer? Last week it joined the Linux Foundation as a Platinum member and SQL Server on Linux is now in public preview.
Well the tide turned and, after open sourcing .NET and rendering it capable of functioning across multiple platforms, Microsoft is steadily making flagship products available on Linux, the start being made with Azure Cloud services.

To consolidate its new position, at the Connect() developer event last week Microsoft annonced that is joining the non-profit Linux Foundation at the highest level (Platinum) and John Gossman, architect on the Microsoft Azure team, will sit on the foundation’s Board of Directors.

full article on

Udacity Blitz From a Different Perspective

Udacity has announced Blitz, a labour supply service whereby its Nanodegree "graduates" can work for clients, with the potential of getting hired afterwards.

It isn't enough simply to be a Udacity student to register to become a "Blitzer", you first have to earn one of the following Nanodegrees:
Android DeveloperData AnalystFront-End Web DeveloperFull Stack Web DeveloperiOS DeveloperMachine Learning EngineerSenior Web Developer Once registered there's no guarantee of work, instead you'll be ready when an opportunity arises calling for skills and interests that match your profile.
The way Blitz operates means that a client company can assign a project to Udacity's Nanodegree graduates for a fixed price, payable to Udacity, and later on can hire the Blitzer without Udacity asking for any fees or posing any restrictions.

full article on

IBM, Slack, Watson and the Era of Cognitive Computing

There's a new chapter in the ongoing "Adventures of Watson" which introduces a new character and partner to Watson, going by the name of the Slack Chatbot.

It's no secret that IBM considers Watson as its flagship product and is placing all bets on its success. After ensuring its maturity as an end product by outperforming human contenders in the US TV game show Jeopardy and aiding in situations like cancer research, IBM's now looks in expanding Watson's reach into as many practical applications as possible, as demonstrated by its latest $200 million investment in Watson's German IoT headquarters in a move to expand both research as well as client base.So given the recent rise of Cognitive Computing, the partnership in which Watson is to power up Slack's chatbot should come as no surprise.

full article on i-programmer

Gain A Competitive Edge With Uber's Driver API

A new sort of API, invokable by 3rd party consumers and carrying brand new functionality, finds its way to Uber's repository's already rich collection of APIs and Uber is offering developers beta access.

Until now Uber's repository has contained the purely client-centric APIs of the Ride Requests, Trip Experiences and UberRUSH Deliveries (an API for logistics and on demand delivery that lets customers track the location of their delivery from any device). The new Driver API is different in that it doesn't attempt to enhance a passenger's ride but instead looks at things from a driver's perspective and comprises a set of well defined REST endpoints

full article on i-programmer

Facebook's Yann LeCun On Everything AI

Udacity's Sebastian Thrun interviewed Facebook's Director of AI Research, Yann LeCun, in a live event that took place on November 1st. You can still catch it on Udacity's Facebook page and here a brief outline.

Spanning just over 18 minutes, this was a short talk, but otherwise satisfactory that approached the topic of AI under an abstract perspective, keeping technicalities and jargon talk to a minimum so that anyone can follow

full article on i-programmer

Jumpstart Your Career In Game Development With Udemy

If you dream about creating the next blockbuster game that goes viral and makes your fortune, Udemy offers two courses that could help you make a start. One introduces the Unity engine while the other targets Unreal we have a special offer for both of them.

Nowadays, to start from scratch, combining libraries and resources to make your own gaming engine, is both unusual and extravagant. Instead it's customary use large frameworks comprised of libraries, sources, assets and IDEs to tap into readily available and highly performant infrastructure and take it from there. Of course there are exceptions to the rule as we found out in this interview with Eugeny Butakov, creator of the successful mobile game, Psebay.

If you want to follow the route of using a proprietary games engine, then Learn to Code by Making Games - The Complete Unity Developer and The Unreal Engine Developer Course - Learn C++ & Make Games will be of interest, and I Programmer readers can take advantag…

Artificial Intelligence Engineer Nanodegree From Udacity

In its pursuit to establish itself as a synonym to Training in AI, Udacity is looking to expand on the success of its Self Driving Car Engineer Nanodgree by launching a new offering with a more general outlook and widespread reach.

Due to the high bar set for entry to the Self Driving Car credential, a major portion of its hopeful candidates had to be turned away and this could provide them with a second chance. This doesn't mean that there's no barrier; there still is but lowered in such a way that the only qualification required is to be able to solve exercises of the following kind:

more on i-programmer

Peachpie Open Source PHP to .NET Compiler

Peachpie is a new open source PHP language to .NET compiler, which aims at full PHP 7 compatibility. Looking at it gave us the opportunity  to revisit the state of dynamic language interoperability on the .NET platform and consider the practical advantages that arise out of this atypical symbiosis of dynamic and static languages under the same  roof.

We've always been keen on the advancements in the field of programming language interoperability, especially from .NET/CLR's perspective; as such we were there when the big bang happened, the period that the very first attempts in bridging and bringing the dynamic languages to the statically oriented CLR commenced through the introduction of the DLR.

full article on

Learning Perl, 7th Edition Book review

The new edition of an all time classic subtited "Making Easy Things Easy and Hard Things Possible". What has changed?

It has been 5 or so years since I extensively reviewed, in two parts (firstsecond), the sixth and, at the time, latest edition of the Llama book.
What has changed in between? A lot. The 6th edition covered Perl up to version 5.14, but with the current release on 5.26, 5.14 sounds like antiquated history.
Of course, the fact that Perl has grown older does not presume that Learning Pearl, 6th edition is largely deprecated. Technology moves fast, but  concepts remain, and it's these concepts that the Llama series highlights. As such, edition 7 also adopts the familiar tutorial-based approach and style, properties that render it highly usable in a classroom, even as a core textbook, but at the same time it expands on the latest upgrades the language has undergone in those 5 years.

full article on

$200 Million Investment In IBM Watson

IBM, acknowledging Watson's far reaching achievements and ever growing untapped potential, has invested $200 million dollars in Watson's German IoT headquarters, in a strategic move to expand research as well as its client base.

We've already reported that artificial intelligence has nowadays reached the status of tradeable commodity, and what better confirmation than this big injection of cash.
So big investments but also big returns expected for IBM as Watson's platform grows from strength to strength, rapidly acquiring new clients, jumping from 4000 to 6000 in just a matter months.

more info on i-programmer

Udemy's Angular 2-The Complete Guide Course Review

Let me begin by saying that "Angular 2 - The Complete Guide"  stays true to its title,  taking no shortcuts and going full on from A-Z, from setting up the environment to full scale deployment.
Initially the course, taught by professional web developer Maximilian Schwarzmüller,covered Angular 2 as a release candidate, long before the awaited official release. So after version's 2 authoritative release, the course underwent the necessary revamping to remove deprecated material or update the existing material to accommodate to the breaking changes that took place, mostly on the Angular CLI front end.

more info on i-programmer

Udacity's Self-Driving Car Engineer Nanodegree

Udacity in perfect sync with the latest industry advancements, finds itself once more at the forefront of  cutting edge technology, by launching a brand new Nanodegree on the Engineering of Self-Driving cars.

This Nanodegree seems the perfect addition to the list of offerings from Udacity, the technology training organisation founded by Sebastian Thrum, who at the same time as being a Stanford professor was at the helm of Google's driverless car team and those who enrolled in Thrun's record breaking AI Class that stimulated the creation of Udacity and the MOOC phenomenon will remember his passion for the idea of using artificial intelligence to engineer safer cars that would eliminate human error

full article on i-programmer

Formation of Partnership On AI

Amazon, DeepMind/Google, Facebook, IBM, and Microsoft have announced the founding of a non-profit organization that to advance public understanding of artificial intelligence technologies and formulate best practices on the challenges and opportunities AI presents.

This collaboration comes into existence shortly after the inaugural report of the AI100 Study, which we reviewed earlier his week and sets out to address fundamental socio-economic issues it set out:
Who is responsible when a self-driven car crashes or an intelligent medical device fails? How can AI applications be prevented from promulgating racial discrimination or financial cheating? Who should reap the gains of efficiencies enabled by AI technologies and what protections should be afforded to people whose skills are rendered obsolete? Because ultimately,
as people integrate AI more broadly and deeply into industrial processes and consumer products, best practices need to be spread, and regulatory regimes adapted.
Is …

How Will AI Transform Life By 2030? Initial Report

The panel of experts tackling "The One-Hundred Year Study of Artificial Intelligence" attempts to address this question in an in-depth report that reviews the advancements and benefits as well as challenges that this technology heralds.

This is the very first in a series of reports set to be published annually. It consists of 27 double-sided pages with a two-column format. As such, its size and presentation can put potential readers off, so we prepared a summary of the most important points interspersed with our own experience on the matter.

full article on

Taming Regular Expressions

Despite their power, regular expressions come with their own challenges. First of all, they have a tendency to quickly become unreadable, so that understanding them becomes a matter of deobfuscation. Furthermore learning how to use them involves a steep curve as they've always been difficult to master.

Simple Regex Language, is the latest addition to the many solutions already at large. An open source project on GitHub, under the MIT License, it takes the radical approach of targeting the very "language" that we use to write regular expressions, completely replacing it with a domain specific counterpart.

But first, let's take a deeper look into the domain specific problem that SRL tries to alleviate. To address the primary issue of unreadability, the /x modifier was introduced, which allowed for the inclusion of white space, line breaks as well as commenting in the regex itself. Under /x the regex engine wouldn't treat those elements as part of the e…

AngularClass Angular 2 Fundamentals - The Coolest Course In Existence

This has to be one of the most interesting online courses I've ever come across, mainly down to the instructor's hip and fast talking sprinkled with the right amount of "yo's" and "hey's" that make it distinct.

This doesn't suggest anything about its nature. however. It just happens that the instructor. besides being super confident in his craft and technology stack, clearly demonstrated in the video-based sessions,is also being cool!

Now on the course itself, it's so hands-on that it becomes overwhelming. Looking through an Angular 2 lens it takes students through the basics, like components and selectors, services and state management, routing and authentication, by building a Google Keep clone from scratch.

full article on i-programmer

Telerik's Mobile App Development Webinar Reviewed

Rob Lauer, from the Telerik Platform Product Management Team at Progress, recently hosted a webinar on ways of building mobile applications. Mobile Application Development - Demystified is now available to all.

The presentation was logically divided into two parts; the first on choosing the right tools depending on the developer's background, while the second, on using Telerik's integrated platform for building and deploying applications, even visually without requiring any coding.

full article on i-programmer

Airship, a truly secure PHP CMS

Attacks on popular Content Management Systems are all too common, and with hacking nowadays considered big business, there's no sign of the attacks declining. CMSs therefore find themselves caught in the eye of the storm, considered as a prime target for both script kiddies and professional hackers alike, as they hold the biggest share of the e-commerce market.
The statistics revealed in Sucuri's most recent Website Hacked Trend report, paint a depressing picture, mainly due to the great user adoption of CMS which

...brings about serious challenges to the internet as a whole as it introduces a large influx of unskilled webmasters and service providers responsible for the deployment and administrations of these sites

full article on i-programmer

Lucida For Personal Artificial Intelligence

The Clarity Labs team of researchers at Michigan University made headlines last year with the release of its own IPA (Intelligent Personal Assistant), called Sirius. Sirius was mistakenly regarded by many as the open source version of Apple's Siri, but that wasn't the case since the two projects are totally unrelated. Maybe that's one reason for rebranding Sirius as Lucida.

As Jeremy Russell, a member of the core team, puts it:

When Sirius was started it was more of an afterthought prototype for research done on what hardware platforms work best for an IPA (Intelligent Personal Assistant), it seemed that a re-brand would be a good idea once it was decided to focus on the AI platform itself
full article on i-programmer

Try ASP.NET MVC on Code School - Course Review

A recently announced free course on Code School is about making web sites with the MVC pattern and C# ASP.NET. Given the current trend for MVC these days, this course presents a good opportunity for experiencing it from a .NET perspective.

Despite being a lightweight introduction, just three levels deep, and with just two goals to complete, Try .NET MVC manages to meet its goal of providing a quick and easy to follow guide to the Microsoft way of doing MVC.

These three levels comprise of a mix of videos that feature instructor Eric Fisher, who talks  you through the concepts, and assisted exercises to be carried out inside Code School's browser based IDE. There are just two goals to complete: add Names to a list and then display those Names.

full article on i-programmer

Yet Another (ASP.NET MVC) Web Framework

YetaWF is a brand new open source product licensed under GPL 3 that  assumes multiple personalities as a web framework, a CMS and an Admin panel.

Primarily, at its core it is a framework for building ASP.NET MVC applications. For this role it includes all the relevant goodies, like the  System.ComponentModel.DataAnnotations namespace, which allows for decorating the data model's class members with attributes that specify validation or display rules on them; the UIHint attribute, which allows for rendering properties under custom display templates; and Templated Helpers for building the UI based on the annotated model.

Secondly, it has been built with modularity in mind and offers out of the box predefined packages comprising many useful utility modules, such as RSA Cryptography for creating public/private keys, a ZIP file creator based on the DotNetZip library, an email sender, YetaWF.Core.SendEmail, and many more. Extensibility is guaranteed by plugging in further packa…

Artificial Intelligence in Pokémons' Service

Even AI cannot escape Pokémons Go's viral craze after Human Intelligence readily submitted.That's all due to a bright idea of combining IBM's Watson AI with the gameplay of Pokémon Go.

Michael Hsu, a researcher looking to apply AI to novel uses as part of the AT&T Shape Tech Expo Hackathon, managed to put Watson's intelligence to work in recognizing, tracking and sharing rare Pokémons' locations amongst users around the world.

Surely, tracking and sharing Pokémon locations is not something earth-shattering as there are plenty of apps like PokeMapper that employ crowd-sourcing approaches for filling in the spots. However, that's a manual and time consuming approach that could very well be automated.

Hsu's application makes the difference in that it works behind the scenes, and without human intervention, by consuming intermittent screenshots taken from within the Pokémon Go app, building on Pokémon Go's functionality, that in turn feeds in…

AI Linux

AI Linux is a Linux distribution that comes complete with artificial intelligence libraries, tool and languages.  A proof of concept alpha version is now available, suitable for test-driving in a virtual environment such as VirtualBox.

The cloud still monopolizes the space where neural networks and their algorithms breed. We have already explored such a case in Haven OnDemand Offers Machine Learning As A Service.
Things seem to be shifting though, with those elaborate algorithms looking to move on to run locally on mobile devices. That includes their training too; the pictures, notes, data and metadata that reside in the device and which are going to be worked upon, will also serve to train the network and aid its learning activities such as the recognizing, ranking and classifying of objects. The difference is that now all of that is going to happen locally.

full article on i-programmer

Health Level 7 (HL7) with Perl

In this article we take a deep look into HL7, the defacto standard in the health sector for exchanging clinical and patient information over heterogeneous systems, with the aid of Perl and the Net::HL7 CPAN module.

HealthIT is a rapidly evolving sector that everyday sees a massive amount of data accumulating. The pressing need for storing, retrieving and manipulating that data led to a computerization race which itself gave rise to a highly disparate and non standardized HealthIT landscape with no common grounds of communication.

But as times changed and requirements became more complex, it soon became evident that a common language for the exchange of information was necessary; a language that would enable this exchange not only inside a healthcare institution's internal IT systems, for example between labs and administration, but also between distinct Health institutions even across cultural and national barriers. (Consider epSOS as an example of a common infra…

First Hybrid Open-Source RDBMS Powered By Hadoop and Spark

Splice Machine is a novel attempt to merge the best parts of the traditional relational database management systems and their NoSQL counterparts with distributed and in-memory computing based on Hadoop and Spark.

Traditional RDBMS find it tough when faced with massive amounts of data, which they typically handle by scaling up, albeit expensively. Another side effect of the sheer volume of data accumulating from the likes of social media and mobile devices, is that OLTP and OLAP queries carry high performance hits that subsequently have detrimental effects on real time analysis and instant decision making.

full article on i-programmer

Achieving Autonomous AI Is Closer Than We Think

AI powered software running on a Raspberry Pi is already capable of beating an experienced pilot in simulated air combat. We look at the ALPHA algorithm and how it might be deployed in the future.

Back in February, when we covered a meeting of experts taking place at the World Economic Forum in Davos to discuss the issue of autonomous robot weaponry, Stuart Russell, professor of Computer Science at UC Berkeley had warned that AI capable of acting on the battlefield with no human intervention necessary was much closer to reality than the rest of the panel expected.

Not much further down the road and we can now begin to experience the super intelligence he had described. A joint effort of the University of Cincinnati, Psibernetix Inc. and the US Air Force developed artificially intelligent powered software that is capable of beating even the best of human pilots in air to air combat simulations.

full article on i-programmer

SilentKeys A Privacy Aware Keyboard

Could Preevio's innovative keyboard be the perfect answer to the privacy concerns arising from the monitoring and tracking of all our daily activities that take place online?
It's common fact that keeping a secret online is not something that the average computer user can master, despite the wealth of information on how to go about it as well as the attempts taken in simplifying the procedures.

Disabling third party cookies and tracking code, keeping your anonymity and browsing history clean, fooling keyloggers or avoiding drive-by malware downloads are just some of the  pitfalls in abundance that stand between you and the safe carrying out of your online activities such as doing your shopping or sending confidential emails.

In fact the situation is much worse than just described, since looking for countermeasures, for example browser addons, antivirus software, anonymous proxies or VPN's, you find yourself tangled between the act of first discovering them, cho…

Firecode - Ace the Coding Interview

Another code learning platform, in this case focused on preparing candidates for a job interview that involves writing code. What's different about it? Let's find out.

After signing up, you have to choose the language you'll be working with. Only Java,C or Python are currently available, but the platform has immediate plans for beefing up its range of supported languages.
Then you work through a mini series of questions in order to gauge your current knowledge and skills and establish an entry level for training and assessment best suited to your experience and knowledge.
For example, choosing Java brings up the following:

read the rest of the article on

21 - Bitcoin For Everyone

21, a mixture between a platform, an app and a service, is setting out to become the third world wide web. It draws on the foundations of the www for inspiration, the first built on HTML, the second, the Social Web, built on personalization, and gazes  boldly into the future, paving the way for a third kind of the web, the one built on Bitcoin.

As it stands, the world wide web cannot address the fundamental issue faced by content and service providers who base their businesses on it, namely financing. Providers have either to rely on ad enabled freemium content, or put their content behind a paywall as a subscriber only service. Both of these options had proved inefficient.

full article on i-programmer

Ingres 11 detailed technical preview

Version 11 of Actian's Ingres open source RDBMS, is going to be a major release as indicated by the jump in the version number. The sequence goes 10.0.0, 10.1.0, 10.2 and from there to 11. This heralds quite a few changes and welcome additions.

The technical preview available at the moment provides only the bare minimum of information, so we dug deeper and can now reveal the most important new features, as far as developers are concerned, broken down by category.

full article on i-programmer

Blisk - The Developers Browser

Blisk is a new lightweight browser targeted solely at developers. It contains convenience functionality that eases the testing and debugging processes of building web pages.

The most important feature of Blisk is the side by side mobile device and desktop screen emulation. The workspace is split in two with the mobile device space occupying the left hand side, while the desktop screen the right one. There are many mobile devices (phones and tablets) to choose from, ranging from Iphone4 to Samsung Galaxy S3 and Google Nexus.

It's important to note that Blisk's device emulation is not the simple resizing of viewport's size but it accurately emulates:
Screen resolutionDevice pixel ratioUser agentTouch event! (you can test the user experience of working with touch screens)more on i-programmer

Neural Networks for Storytelling

A paper authored by a large team of Microsoft Researchers past and present, to be presented this week at the 15th Annual Conference of the North American Chapter of the Association for Computational Linguistics (NAACL 2016), introduces Microsoft Sequential Image Narrative Dataset (SIND) and how it can be used for visual storytelling.

Visual story telling is a standard preschooler activity found in any curriculum. Kids are presented with a number of small paper frames, each one containing a piece of the story, that they have to put correctly together from start to finish for revealing  the hidden story, a story with a beginning, middle and end.

full article on

Apress "Java Closures and Lambdas" book review

A book that sets out to introduce programmers to the Functional Programming mindset looking through the eyes of Java. What will you get out of it?

Although the emphasis is on lambdas, in this book Robert Fischer places them into the wider perspective of Java 8 which revolutionizes Java, adjusting its foundations by shifting from the pure OOP model to incorporate the functional one as well. Lambdas of course lie at the epicenter of that revolution, responsible for the move from a conservative Java to a more succinct, versatile and performant programming paradigm. 

This might be uncharted territory for Java, but not so for other languages, such as Perl. The author himself is a veteran Perl programmer who had long ago discovered Perl's functional programming (FP). His book is therefore a testimony to Perl's clairvoyance and innovative thinking that others re-discover many years, even decades, later. And that is the book's aim, to familiarize the Java programme…

HackerRank - Advance Your Coding Through Problem Solving

This is very interesting proposition in the "learn to code" e-learning field. HackerRank uses a variety of methods to reinforce learning: hands-on problem solving through trial and error, gamification with points, ranking and awards and constructive competition through contests and hackathons, all combined combined into a single package.

HackerRank's mission objectives are to help students improve their coding, make personal connections through interest sharing and team working, and, for high achievers, even the opportunity of job offers. 
There is no restriction as to where you start or what you can do concurrently and students can jump in from one of three potential entry points, depending on their level of experience in programming.

full article on i-programmer

XSSHunter for pentesting

XSS Hunter is a recently launched platform that makes pentesting for XSS vulnerabilities much easier to monitor and organize. Through it you can launch all kinds of XSS attacks, but where it really shines is when carrying out a Blind XSS attack.

A Blind XSS attack is a variation of the stored or persistent attacks and typically affects web applications that allows users to store data. It occurs when the attacker exploits a vulnerability which allows him to save his payload on the server's side (i.e in a database), subsequently served with the rest of the content of the affected page, this way affecting all those who visit the vulnerable web page. A booby-trapped comment posted in a public forum that when clicked triggers the exploit is a prime example.

full article on i-programmer

NativeScript - to rule them all?

NativeScript 2.0 was recently released with tighter integratin for Angular2, extended support for 3rd-party native libraries for iOS and Android, and support, via plug-ins for TypeScript and UWP. A webinar tomorrow from John Papa will show you how to use Angular and NativeScript to build native mobile apps.

Cross platform mobile applications are the holly grail of every developer. Many have tried to conquer it, some have failed, some had successes, albeit mediocre ones. Each solution replenished the other solutions' shortcomings, still no-one being 100% percent at the target. There were many paths to follow, the end result of that, a heavily fragmented landscape of mobile cross platform development.

full article on i-programmer

Easy plotting With Chart.js

Chart.js 2 has been released with new chart types and improved extensibility. Ease of use is one of this open source library's key features and here we look at how it compares with d3.js at creating a  simple bar chart.
The JavaScript library Chart.js is an open source project created by Nick Downie in 2013. Now the project has moved from Nick's original GitHub repository to one of its own:, where is is currently very active.
After a dynamic start and penetration of the JavaScript visualization scene, it looked as though the Chart.js project reached a stalemate, judging from low traffic or better said, lack of commits in its GitHub repository.

full article on

Exposing The Most Frequent Mistakes In Programming

The Blackbox project is a massive data collection initiative by the University of Kent, that sifts through millions of source code compilations looking to identify the most frequent mistakes made by student programmers.

Why is that useful?
Understanding how students learn to program through their common misconceptions and their recurring mistakes is important for many reasons:
Produce educational material focused on these issues
Render educators more efficient
Build IDE's or programming tools that protect against those errors
Improve the readability and the helpfulness of the errors emitted by compilers
Language design - improve the future syntax and design of a language by taking into consideration the syntax barriers students typically encounterfull article on

Free Code Camp - Not Just A Bootcamp

Free Code Camp is an open source community that helps you learn how to code by working though self-paced coding challenges and building projects. It offers verified certificates, is completely free and you can help non-profits as you learn. It is also highly popular on GitHub.

This coders' bootcamp is currently trending according to GitHub's "Trending in open source" chart , a chart amended on a daily basis to reflect  what the GitHub community is most excited about. Currently FreeCodeCamp lies in spot number 3, an impressive feat given the abundant competition of open source projects in Github's realm.

FreeCodeCamp has two system components: the backend codebase that is open sourced through GitHub, under the permissive BSD3, and its frontend utilization of the actual e-learning platform, complete with its own curriculum, at

You might jump to the conclusion that the no 3 spot is due to the popularity of the codebase, and not to the …

How To Create A Viral Mobile Game - interview with Eugeny Butakov of Psebay

Don't we all dream of a hit game? The reality is all too often different, but it can be done. Here we find out how from Eugeny Butakov, creator of the successful mobile game, Psebay.

This interview takes an in depth look at the mobile gaming scene and examines a range of aspects of game development from the tools used to issues such as monetization, distribution and piracy.

We wanted the perspective of the developer, who as lone individual started from scratch, but managed to create a game that went viral.That individual is Eugeny Butakov from Russia with his trials motorcycle riding game, Psebay.

full article on i-programmer

nginx A Practical Guide to High Performance - book review

nginx has taken the Internet by storm, gaining fast in popularity, powering up some of the most high traffic websites in the world and directly challenging Apache for its title of the most popular Web Server out there

Despite the truthfulness of that statement, nginx's main purpose is not to act as a Web server replacement, since in many cases it co-exists and cooperates with Apache under the very same installation

Subtitled "A Practical Guide to High Performance" this book slices through that hype and instead looks into nginx's substance, helping to understand its application, functionality and ease of scaling up.Its author, Twitpic cofounder Steve Corona, swears by its versatility, having managed handling up-to 10,000 Twitpic requests per second with nginx.

full article on i-programmer

RPerl - Running Perl 5 Faster

Version 1.7 of the Perl 5 to C/C++ optimizing compiler, codenamed Tycho was released earlier this month. The issue RPerl tries to address is Perl's slow performance, sufficient for most cases, but prohibitive for the real time domain.

Perl trades speed for flexibility as it takes care of many things so the programmer won't have to, such as tying hashes (a term that refers to an intricate internal functionality) reference counting, automatic type conversions, closures, autoloading and much more.

full article on i-programmer 

Play by Play: C# Q&A with Scott Allen and Jon Skeet

Play by Play is Pluralsight format in which celebrity programmers are asked to work on a randomly assigned task, giving the audience a rare opportunity to observe how they work and the way they think towards reaching a solution. This one features Jon Skeet and Scott Allen.

For this already well established series of courses, the producers envision the attendee as filling a chair next to their programmer heroes, like colleagues do, watching them perform their magic unrehearsed and at natural speed, thus enjoying an informal view into the work-flow and work process of an expert.

In this recent addition, Rob Conery, co-founder of Tekpub, brought together Jon Skeet, author of the C# in Depth series, and Scott Allen, author or co-author of several books on Microsoft technologies. In something of a departure from the usual task-oriented format this session, lasting 1hr 15 minutes, is a Q&A on .NET, and C# in particular.

full artilce on i-programmer

Artificial Intelligence For Better Or Worse?

Advancement in the field of Artificial intelligence is like a tsunami that cannot be stopped. There is a new conquest everyday that, piece by piece completes the puzzle. But what happens when the puzzle is finally assembled? Will the world transcend into a new state of consciousness or will it come face to face with its own demise? It's not easy to tell, but there are hints and indications from both directions.
Nowadays we are increasingly accustomed to the idea of the rise of intelligent machines.

full article on

Machine Learning Lab's Regular Expression Game

Machine Learning Lab has created a game that puts your regular expression skills to the test.
We first met Machine Learning Lab in Automatically Generating Regular Expressions with Genetic Programming, when we used its RegexGenerator++. Now we are back to explore how to have fun with it.

The game comprises of 12 levels of increasing difficulty, with each level containing a different block of text, which in turn contains the parts of the text that must be matched against a regular expression - which has to supplied by the user. Each attempt is timed and rated in a  'F-measure' scale that
measures how close the extractions and the matches were, with 100 points being awarded for the perfect result, 0 for a totally wrong one or for giving up.
 Before the game begins you complete a simple questionnaire where you have to tick the boxes adjacent to the regular expression constructs you are familiar with.

full article on

The AIX Minecraft Project Makes Thinking Software Possible

Microsoft researchers set out to make a difference by trying to make a Minecraft character climb a virtual hill. It might sound as not that big a deal, but it is. The difference arises out of  trying to program it to learn, as opposed to programming it to accomplish specific tasks.

Until now a neural network has been supplied with millions of preclassified data sets in order to be taught how to do something, So called supervised learning resulted in networks only learning what we already knew how to do.

full article on i-programmer

Automatically Generating Regular Expressions with Genetic Programming

Is it possible to "breed" a correct regular expression so that you don't have to go to the trouble of actually working it out for yourself? The answer seems to be "yes", and the result could even be better than the one you created by hard logical thinking.

When you construct a computer program you do so through a series of well defined instructions that work on a set of data and produce a desired outcome.
Given our focus here is on regular expressions, let's say that our goal is to match just the alphanumeric characters of the string:

Sticking to the traditional way we would have to supply an instruction in the form of a regular expression, that is '/[a-zA-Z]/g'

But what if we could start the other way around? That is, get the computer to solve problems without being explicitly programmed?

How can this be done?

With Genetic Programming we can tell a computer program what we're after and let it  generat…

Hacksplaining - Learn Through Hacking

Hacksplaining is a newly established web site that encourages hacking in order to learn and protect against it. Everyone in the web development business knows achieving a secure web site, to the degree that is possible, is difficult. It's a task of utmost concern that must be integrated into the building stages of the site, not applied afterwards.

Security wise, there's just too much for the web developer to follow, having to cope with terms and acronyms like SQL Injection, XSS and CSRF etc that tend to confuse rather than help to maintain focus.

full article on i-programmer

Scrape away from KimonoLabs

A recent startup, KimonoLabs, established in 2014,  set out to change the scraping landscape. Its recently announced takeover by Palantir will shut down its data scraping service. Kimono has produced a desktop app into which devs can import its APIs before the end of March.

Picking up on the growing trend, driven in part by the growing IoT applications Kimono aimed to build web based RESTful APIs around them that would be accessible by developers and non developers alike.
Its early successes included integration with the Pebble smart watch for results of the 2014 World Cup.

Kimono's API's promised to take the burden off the user, who otherwise would had to write code and use tools such as Scrapy for his scraping tasks instead. In short Kimono did the scraping for you and provided the results via a standard API.

But delay in establishing a sustainable revenue plan was probably the major reason for its takeover by Palantir. 

full article on i-programmer 

Data Entry with Xataface

Xataface is a full-featured PHP Web application framework for building a MySQL database front-end for, targeted at non-technical users who will do the task of actually entering data. Based on real life experience of using it for a search and comparison website for smart devices, we explain the why and how of using it.

In web development the focus is always on the development side. But what about the infrastructure, the crucial data backend that the web site is going to operate on?
It really depends on the content. In some cases a CMS will be enough but in a data-driven web site like that of an e-shop where you have to combine information from a variety of tables staying true to the relational model, a CMS might not be the most appropriate solution. So where does that leaves us?
Entering data using raw SQL queries might be possible for a low volume site with simple entity relationships, but for anything more involved it's not practical.

We faced this dilemma when buil…

Java Cryptography Basics On Skillshare

Java Cryptography Architecture: Hashing and Secure Password Hashing is a new video based course by Frank Hissen of IT Security Development & Consulting. It goes through the very basics of Java's crypto hashing algorithms such as MD5, HMAC and PBKDF2 in a little over half an hour.

The Setup
The first video goes through the prerequisites needed for trying out the coding examples yourself. These are JDK 1.8 as it contains all of the latest encryption providers, any Eclipse IDE version and the Apache Commons Codecs Library, which is used in most examples since it exposes an API that is much easier to work with than the inherent JDK one.

full article on i-programmer

Atlas Robot - The Next Generation

An impressive video released by Boston Dynamics, showcases the capabilities of the new generation of the Atlas robots. Untethered at last, Atlas is now confident not only in its ability to move but also to recover from a fall.

The video begins by showing the robot walking on snow and navigating alone through the woods, mirroring the human way of walking. It's remarkable watching it recalibrating its side stepping, like humans do with their muscles,when losing its foothold because of the snow and harsh terrain.

full article on i-programmer

Gazebo Robot Simulator Makes Version 7

Ever had the urge of building a robot but found the cost and time required prohibitive? The Open Source Robotics Foundation (OSRF) offers the solution to both those problems with its free and open source Gazebo robot  simulator.

Used by both hobbyists and professionals alike, one can build models that act like real robots and move in their own world, ruled by its four, state of the art, physics engines (the default being ODE Open Dynamics Engine, for simulating rigid body dynamics).

Why that many physics engines?

read full article on i-programmer

Lodash - A Functional JavaScript Library

Lodash began as a fork of the popular Underscore.js library but since then has managed to become its superset, adding new features and performing much better. Version 3.4.0 has recently been released.

It has sprung into existence because of the need for better and more agile modularization,closing the gap left behind by big libraries like jQuery. JQuery, being a massive library, made tapping into individual features difficult, requiring loading the whole of the library to get just to the little functionality needed.

read full article on i-programmer

Advanced Perl Regular Expressions - The Pattern Code Expression

In this part of our series exploring Perl RegEx we are going to look into another advanced construct, that of the pattern code expression ??{code}. According to the official perldoc this " like a regular code expression, except that the result of the code evaluation is treated as a regular expression and matched immediately."
We will also attempt to combine it with the ?{code} code evaluation expression, covered in the first part of the series.

We'll build on the same scenario, in which we were receiving a serialized stream from a web service that had all special characters encoded in HTML entity hex encoding. The requirement was to convert them back to their actual character representation, for example '£' would become the pound £ symbol). Additionally we are going to search for files that contain the decoded string in their names.

read full article on i-programmer - Smart Device Seeker - Find your new Tablet, Smart Phone and Smart Watch with ease!

We are a new Startup that aims to build a web site that will be the most accurate database for smart devices as it will allow users to search for their ideal smart device (phone,tablet,smartwatch) by going through specialized criteria, like the width of the device, the amount of megapixels the rear camera has, how many fps video can it shoot, etc. Because it unifies all smart devices it makes easy to seek the ideal device and help you find your next Tablet, Smart Phone and Smart Watch, acting as the Buyer's Consultant....

Proudly built with Perl and the Dancer framework


Autonomous Robot Weaponry - The Debate

Let's face it, Robots in one form or another seem to be everywhere. Having infiltrated factories, healthcare, marine and space exploration, Robots will soon conquer the household too, taking care of all those pesky chores. But what about their military applications. Can they be used to form an army? Further, what about that army being autonomous, able to locate and attack targets without any user intervention?
Do not confuse this use of robots with drones and Unmanned Aerial Vehicles (UAV) which are (still) controlled by humans.

The idea of armed robots might sound far-fetched  but on the contrary the discussion that took place during the World Economic Forum in Davos, proves the exact opposite. As a topic that needs to be debated in such a high profile forum, can only mean that the issue is real or will become so in the very near future.

read on i-programmer

OpenFace - Face Recognition For All

Face recognition, once the preserve of the few, the likes of intelligence and security services, is now made available to the masses as well, thanks to OpenFace.

Caveat, there are many face detection libraries, such as OpenCV, and applications like Facebook or Picasa, but this is about face recognition, and applications of this kind are not easily found in public.

OpenFace changes all that. It is an open source face recognition implementation, written in Python and Torch, and based on deep learning and neural networks . As such, it relies on a number of components that work together as pipelines, each one basing its input on the previous component's output. These are dlib and OpenVC, used for the face detection, alignment and transformation; the Torch machine learning library for implementing deep learning; and nn4, the neural network model itself.

full article on i-programmer

Introduction to the FreeBSD Open Source Operating System LiveLessons

Marshall Kirk McKusick is no stranger to the world of FreeBSD. Well equipped with a Master's as well Doctoral degree in Computer Science and past president of the Usenix Association, he has overseen the development and release of BSD 4.3B and 4.4 as well as co-authored the 'Design and Implementation of the FreeBSD Operating System' book series.

This live lesson video lecture not only adds to the material presented in the book but goes far beyond, looking into FreeBSD's, and consequently UNIX's architecture, from the inside out.

read full article

Github Victim Of Its Own Success

When it first appeared on the scene, Github was one of a kind and a true visionary amongst its rivals still using Subversion, Bazaar or Mercurial as their source control system.
Since then the scene has changed a lot, with many alternative options challenging the monopoly established by Github. However, its pre-eminent position allowed Github to more or less take for granted that every open source project out there would use it as its hosting service.

read full article

Advanced Perl Regular Expressions - Extended Constructs

Perl is still the leader, almost the standard, when it comes to regular expressions. However it also possesses some lesser known features that  deserve special attention, like the embedded code constructs for runtime code evaluation. Let's find out what Perl regular expressions are really like with Perl inside.

How does Perl let you mix code and regular expressions?
It provides the (?{ code }) construct which essentially allows for embedding Perl code that gets executed upon every match of the pattern, inside the regular expression.
For example, let's say we have a file that is about to be distributed to multiple platforms/Operating Systems therefore its file name needs to be portable and compatible with the various OSs' file systems. What is the best way to achieve this?

full article on i-programmer

PostgreSQL Version 9.5 - what it will bring

With the new PostgreSQL version 9.5 about to be released, we take a look at the most anticipated upgrades it will bring, beginning with its new Upsert feature.
PostgreSQL is the open source database system that was originally created at the University of California, Berkeley. It is now over a year since its last decimal point upgrade, see PostgreSQL 9.4 Released, and there are some notable enhancements.

full review on i-programmer