Programming News and Views
Send your programming press releases, news items or comments to: NewsDesk@i-programmer.info
Summer Hackers Program - An Opportunity For Women
24 Mar | Sue Gee
Lambda School is partnering with Y-Combinator founder Jessica Livingston to help more women in the US learn how to program, and ultimately to increase the number of women startup founders.
Bach Google Doodle - AI Powered Creativity
23 Mar | Sue Gee
To celebrate the 334th anniversary of the birth of Johann Sebastian Bach, Google produced an interactive doodle that lets you write a short melody and have it harmonized in the style of Bach.
March Week 3
23 Mar | Editor
Week-by-week I Programmer has new articles and book reviews, written by programmers, for programmers. We also cover breaking news stories and recently published books. In this week's articles Harry Fairhead looks at Shifts and Rotates in C and, to mark Pi Day, Mike James explores Non-Computable And Other Numbers.
Google Code-In Grows
22 Mar | Kay Ewbank
The results for Google Code-in (GCI) are in, with the judges reporting big increases in entrants from Austria, Indonesia, Malaysia, Pakistan, and Taiwan. Code-in is Google's competition for 13-17 year olds for writing open source software, used by some as a stepping stone to Google Summer of Code.
New MSDN Blogs Broken
22 Mar | Sue Gee
Attention was drawn yesterday to the mess that Microsoft is making migrating the MSDN blogs to their new platform, when Eric Lippert tweeted that his blog had been taken down. Although his blog has now been restored, much of what was a rich archive is still missing and what remains difficult to navigate.
NVIDIA Moves Real-Time Ray Tracing Forward
21 Mar | Kay Ewbank
NVIDIA is making its Real-time Ray Tracing available on existing GTX graphics cards, including some older models. NVIDIA is also introducing GameWorks RTX, a set of tools and rendering techniques that help game developers add ray tracing to games.
21 Mar | Ian Elliot
Oxide - A Simpler Formalized Rust
20 Mar | Harry Fairhead
Rust is one of the more remarkable new languages that has a reasonably large following. Oxide, an experimental formalized programming language close to source-level Rust, but with fully-annotated types, highlights its special approach to variables and assignment.
Stadia - Google's Cloud Gaming Streaming Platform
20 Mar | Lucy Black
Google's Stadia, its subscription-based cloud gaming service, was formally announced during Google's keynote at the 2019 Game Developers Conference. Stadia will deliver access to games on any screen - TV, PC, laptop, tablet and phone - via the Chrome browser and requires no additional hardware, although Google has developed its own controller.
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.
Practical Statistics for Data Scientists
Tuesday 19 Mar
Author: Peter Bruce and Andrew Bruce
Statistics for data scientists? Aren't they statisticians?
The LIFO Stack - A Gentle Guide
The stack is a very simple idea. It is a data structure that has only two simple operations and yet not only is it powerful, it is at the heart of modern computing, both theory and practice. Let's find out more about it.
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?
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.
The Ray Tracer Challenge (Pragmatic Bookshelf)
Friday 22 Mar
Subtitled "A Test-Driven Guide to Your First 3D Renderer", this book sets you the challenge of building a photorealistic 3D renderer from scratch. Author Jamis Buck says it's easier than you think. In just a couple of weeks, build a ray-tracer that renders scenes with shadows, reflections, refraction effects, and subjects composed of various graphics primitives: spheres, cubes, cylinders and triangles. With each chapter, the reader is shown how to implement another piece of the puzzle and move the renderer that much further forward. The information is given in a language independent way in plain English, which you translate into tests and code.
The Well-Grounded Rubyist 3rd Ed (Manning)
Wednesday 20 Mar
This book uses a tutorial approach that begins with your first Ruby program and takes you all the way to sophisticated topics like reflection, threading, and recursion. Authors David A. Black and Joe Leo concentrate on the language and its uses so you can use Ruby in any way you choose. This edition has been updated for Ruby 2.5. By the end of the book the authors have reached topics on Ruby Dynamics, including object individuation, callable and runnable objects, callbacks, hooks, and runtime introspection, and functional programming with Ruby.
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.
Previous Book Watch.