Programming News and Views
Send your programming press releases, news items or comments to: NewsDesk@i-programmer.info
Functional Programming Patterns With RamdaJS
19 Mar | Nikos Vaggalis
Linux Foundation Launches Red Team Project
19 Mar | Kay Ewbank
The Linux Foundation has launched a new project aimed at incubating open source cybersecurity tools. The Red Team Project's main goal is to make open source software safer to use.
Not All AI startups In Europe Use AI
18 Mar | Sue Gee
Startups characterized as being concerned with AI attract 15% to 50% more funding than other technology firms. However, some 40% of firms classified AI startups in Europe lacked evidence of using AI.
Go Developer Network Launched
18 Mar | Kay Ewbank
A network for Go developers has been launched by a combination of the Go community leaders at GoBridge and Google. The Go Developer Network (GDN) is designed to provide a single place for information on Go.
AI Driving Olympics - A Duckietown Challenge
17 Mar | Lucy Black
The AI Driving Olympics (AI-DO) is a competition focused around AI for self-driving cars. It made its debut in December 2018, at the machine learning conference NeurIPS and now teams are preparing for the second edition to be held at ICRA 2019 in May. As before it will be run using the Duckietown platform.
Windows 10 Now Running on 800 Million Devices
16 Mar | Janet Swift
More than 800 million devices are now running Windows 10. This milestone wasn't announced with a fanfare but was included on Microsoft's “By the Numbers” site, a link that was then tweeted by Yusuf Mehdi, Microsoft's Corporate VP for Modern Life and Devices.
March Week 2
16 Mar | Editor
This digest gives links to all our news coverage, the week's Book Review and additions to Book Watch. We start with the feature articles - an extract from Android Programming in Kotlin: Starting With An App in which Mike James considers State Managment, and, from Ian Elliot, the answer to the question What Exactly Is A First Class Function - And Why You Should Care?
Microsoft Open Sources Calc
15 Mar | Mike James
.. but not necessarily the one you were expecting. In a continued embrace of open source Microsoft has placed the code for Windows Calc on GitHub - the UWP version that is.
GraphQL Foundation Gets Bigger
15 Mar | Kay Ewbank
The GraphQL Foundation has announced a collaboration with the Joint Development Foundation, and new members including Neo4j have joined.
Google Smashes Pi Record For Pi Day
14 Mar | Sue Gee
To mark this year's Pi Day, Google has announced a new world record of 31.4 trillion digits for our favorite irrational mathematical constant, Pi.
Iodide - A New Tool For Scientific Communication And Exploration
14 Mar | Kay Ewbank
A new experimental tool designed to help scientists prepare interactive documents using web technologies has been released in an alpha version. Iodide is designed to encourage 'communicative workflows' by bundling the editing tool as part of the document.
13 Mar | Ian Elliot
13 Mar | Alex Armstrong
World Wide Web's 30th Anniversary
12 Mar | Sue Gee
Sir Tim Berners-Lee used the occasion of the World Wide Web's 30th anniversary to reflect on how the web has transformed the world and to acknowledge the problems that need to be tackled.
Apache Daffodil Improves DFDL Compatibility
12 Mar | Kay Ewbank
Apache Daffodil. an open source implementation of the Data Format Description Language to convert between fixed format data and XML/JSON, has been updated to improve DFDL compatibility.
The Alexa Prize Third Time Around
11 Mar | Sue Gee
The application period for the Alexa Prize Socialbot Grand Challenge 3 opened last week. Amazon's aim in running this competition for teams of university students is to make advances in conversational AI and human computer interaction.
Apache MXNet Deep Learning Adds Julia API
11 Mar | Kay Ewbank
An updated version of an Apache Deep Learning library has been released. Improvements in MXNet 1.4.0 include Java bindings for inference and Julia bindings.
Google Takes On Quantum Computing
10 Mar | Sue Gee
It is a year since Google announced Bristlecone, its 72-qubit quantum processor. Since then the Quantum AI team hasn't made any further announcements. However, there is now a series of videos that show that progress is being made
Practical Statistics for Data Scientists
Tuesday 19 Mar
Author: Peter Bruce and Andrew Bruce
Statistics for data scientists? Aren't they statisticians?
Fundamental C - Shifts And Rotates
Bit manipulation is almost dead in high-level languages, but it is a core technique in C. In fact, it is one of the reasons for using C. This extract, from my new book on programming C in an IoT context, looks at shifts and rotates.
Non-Computable And Other Numbers
What are the limits to computation? The computer science theory of computation can be intimidating because of its use of logic but taking a programmer's approach makes it seem much simpler. So if you want to know what a non-computable number is - read on.
Android Programming In Kotlin: State Management
Android apps can be stopped and restarted at any time. Managing an app's state is a big problem unless you master the bundle and more. Here's how to do it in Kotlin, in an extract from my published book Android Programming in Kotlin: Starting With An App.
What Exactly Is A First Class Function - And Why You Should Care
You may have heard people saying that in some language or another that functions were first class objects, or have come across the term first class function. What does it mean? And why is it so good?
The Programmers Guide To Kotlin - Using Swing
At the moment pure Kotlin programs that target the JVM and make no use of Java code are are rare. In this extract from the book on Kotlin by Mike James we look at how to use a general Java library - Swing - to use Java code within Kotlin programs.
Differentiation and Integration
Click for larger image
Take a problem, almost any problem and if you can solve it with an algorithm then the chances are you can solve the inverse problem. You know x so you can work out y now given y, well x can be found, but often it is a little harder. There are some problems for which "little" becomes "a lot". So it is with many NP problems and it certainly is for calculus. If you have been there and know how terrible a task integration is, just stop for a moment and ask yourself why? Why is integration so very hard....
More cartoon fun at xkcd a webcomic of romance,sarcasm, math, and language
Follow Book Watch on Twitter
Book Watch is I Programmer's listing of new books and is compiled using publishers' publicity material. It is not to be read as a review where we provide an independent assessment. Some but by no means all of the books in Book Watch are eventually reviewed.
Algorithms for Optimization (MIT Press)
Monday 18 Mar
This book offers a comprehensive introduction to optimization with a focus on practical algorithms. Authors Mykel J. Kochenderfer and Tim A. Wheeler approach optimization from an engineering perspective, where the objective is to design a system that optimizes a set of metrics subject to constraints. Readers will learn about computational approaches for a range of challenges, including searching high-dimensional spaces, handling problems where there are multiple competing objectives, and accommodating uncertainty in the metrics. The text provides concrete implementations in the Julia programming language.
Building Xamarin.Forms Mobile Apps Using XAML (Apress)
Friday 15 Mar
This book shows how to use Xamarin.Forms to build iOS and Android apps using a single, cross-platform approach. Authors Dan Hermes and Dr. Nima Mazloumi show how to bind UI to data models using data binding and using the MVVM pattern, and how to customize UI elements for each platform using industry-standard menus, effects, custom renderers, and native view declaration.
Fundamental C: Getting Closer To The Machine (I/O Press)
Wednesday 13 Mar
This book takes an approach that is close to the hardware, introducing addresses, pointers, and how things are represented using binary. An important idea is that everything is a bit pattern and what it means can change. As a C developer, you need to think about the way data is represented, and Harry Fairhead encourages this. He emphasizes the idea of modifying how a bit pattern is treated using type punning and unions. This power brings with it the scourge of the C world – undefined behavior - which is ignored in many books on C. Here, not only is it acknowledged, it is explained, together with ways to avoid it.
Data Structures and Algorithms with Scala (Springer)
Monday 11 Mar
This practically-focused textbook presents a concise tutorial on data structures and algorithms using the object-functional language Scala. The material builds upon the foundation established in the title Programming with Scala: Language Exploration by the same author, Bhim P. Upadhyaya. Highlighting the techniques and skills necessary to quickly derive solutions to applied problems, this text is aimed at time-pressured students and professional software engineers.
Previous Book Watch.