27 languages to improve your Python

Nick Coghlan writes:

One of the things we do as part of the Python core development process is to look at features we appreciate having available in other languages we have experience with, and see whether or not there is a way to adapt them to be useful in making Python code easier to both read and write. This means that learning another programming language that focuses more specifically on a given style of software development can help improve anyone’s understanding of that style of programming in the context of Python.

To aid in such efforts, I’ve provided a list below of some possible areas for exploration, and other languages which may provide additional insight into those areas.

The languages and areas are:

  • Procedural programming: C, Rust, Cython
  • Object-oriented data modelling: Java, C#, Eiffel
  • Object-oriented C derivatives: C++, D
  • Array-oriented data processing: MATLAB/Octave, Julia
  • Statistical data analysis: R
  • Computational pipeline modelling: Haskell, Scala, Clojure, F#
  • Event driven programming: JavaScript, Go, Erlang, Elixir
  • Gradual typing: TypeScript
  • Dynamic metaprogramming: Hy, Ruby
  • Pragmatic problem solving: Lua, PHP, Perl
  • Computational thinking: Scratch, Logo

SwiftKey goodness

For a few years now I’ve been a happy user of the SwiftKey app.  SwiftKey is a predictive keyboard for Android and iOS.  I was very skeptical when I tried it the first time, but my mind was blown almost instantly.  The app does not just make generic predictions T9 style, but learns from your SMS history, emails, social network posts, and even your blog’s RSS (obviously, only those channels that you allow it access to).  With that, the predictions are so accurate that you rarely have to type more than a couple of characters for it to guess.  In fact, sometimes it guesses the next word without you even typing anything.

Well, OK, so I wrote this all before.  Why am I suddenly retyping this?  Because I got an email from SwiftKey with some updates as to what’s happening there.  And I think that it’s pretty cool how they’ve taken something so seemingly simple as a keyboard and turned into a … well, not industry yet, but something more and something exciting.

ninja themes

For all those touch-typing fans, they’ve released two keyboard themes Ninja Pro and Ninja Trainer.  If you mastered your laptop’s keyboard, enhance and extend your skill to the mobile and tablet now.

swiftkey 6

SwiftKey 6 beta version is out with some cool features.  Most notably  – Double-Word Prediction, which should save you even more typing.  SwiftKey has also reached 100 supported languages, so you can recommend it to your foreign friends much easier.

neural

And if SwiftKey wasn’t awesome already, they are pushing the boundaries with some real high end computing – neural networks and machine learning.  The blog post goes into detail of how this whole approach works and how it makes predictions better.

Wow!  Talk about a simple keyboard app for the mobile now … The sky is truly the limit.

2016 will be the year of the ARM laptop

Slashdot links to the story that quotes Linus Torvalds’ address of the LinuxCon 2015:

“2016 will be the year of the ARM laptop”

For those who’s rusty on the CPU hardware side, he’s a very easy to follow article, describing the key difference between ARM and x86 architectures.

rather – replace anything you want in your social feeds

rather

For all those people who complain about my pictures of food, somebody else’s pictures of babies, Justin Bieber photos, and the like, here’s something to try: get rather.

This sounds like a handy tool for anyone who hasn’t been blessed with patience or can’t figure out the “unsubscribe” button.