Weekly notes 12

Late Autumn and rain has arrived to Finland and now we have good reason to stay at home and read about new ideas and what happens in technology.

Weekly notes, issue 12, 30.10.2016

Learning new things

Cyber Security Base with F‑Secure
Free and open course to learn about tools used to analyse flaws in software systems, necessary knowledge to build secure software systems, the skills needed to perform risk and threat analysis on existing systems and the relevant legislation within EU. It’s a course series by University of Helsinki in collaboration with F‑Secure Cyber Security Academy that focuses on building core knowledge and abilities related to the work of a cyber security professional.

Google Style Guides
Thinking about how to format your code? Luckily Google Style Guides has solved it for you. And with explanations like for Java.

Free programming books by O’Reilly
O’Reilly is known for their programming books and they’ve compiled the latest insights of what’s happening in the world of software engineering, architecture, and open source. Lot’s of topics regarding microservices from different aspects.

Open Guides: Amazon Web Services
“AWS’s own documentation is a great but sprawling resource few have time to read fully, and it doesn’t include anything but official facts, so omits experiences of engineers.” Open Guides: AWS is by and for engineers who use AWS. It aims to be a useful, living reference that consolidates links, tips, gotchas, and best practices. It arose from discussion and editing over beers by several engineers who have used AWS extensively.

The world of JavaScript

Progressive Web Apps with React.js: Part I  –  Introduction
Progressive Web Apps (PWA) take advantage of new technologies to bring the best of mobile sites & native apps to users. In the series of posts Addy Osmani shares his experience turning React-based web apps into PWAs.

Yarn – new JavaScript package manager
Yarn – fast, reliable, and secure JavaScript package manager. Alternative to npm client. Looks promising.

NPM vs. Yarn cheat sheet
Good survival guide to Yarn JavaScript package manager. Yarn has some goodies which npm doesn’t, like licenses generation.

Something different

11-hour struggle to make tea using Wi-Fi kettle
Making a cup of tea should be simple enough but if you’re using a Wi-Fi kettle it doesn’t always go according to plan.

Total Nightmare: USB-C and Thunderbolt 3
“Simple-looking port hides a world of complexity, and the (thankful) backward-compatibility uses different kinds of cables for different tasks. Shoppers have to be very careful to buy exactly the right cable for their devices!”

Weekly notes 11

This time weekly notes provides pointers to last weeks JavaOne, teaches you to design better forms, tells about 171 words every programmer should understand and how to learn something about psychology which might help to understand yourself and maybe also users. And last but not least the documentary of last year’s Transcontinental 2015 tells a story of awesome cyclist who ride across Europe to Istanbul.

Weekly notes, issue 11, 27.9.2016

Development

JavaOne 2016: 85 recorded sessions
JavaOne was held las week and if you couldn’t attend it, like me, then you should have a look at the JavaOne 2016 Youtube playlist with 85 recorded sessions.

You need to be this tall to use [micro] services
Good hacker news comment on Microservices. “Thing is – these are all generally good engineering practices. But with monoliths, you can get away without having to do them. But with microservices, your average engineering standards have to be really high. Its not enough if you have good developers. You need great engineers.” (from @jaykreps)

Real world #kanban board

Good to know

The MIT License, Line by Line
171 words every programmer should understand. The MIT License is the most popular open-source software license. Here’s one read of it, line by line. Hacker News comments has also some wisdom. (from Hacker Newsletter #319)

re:publica 2015 – Mikko Hypponen: Is our online future worth sacrificing our privacy and security?
Video from year ago but still relevant as Mikko Hypponen explains why Facebook wants to get your phone number from Whatsapp. Watch from 12 minutes onward.

Emoji from iOS beta 4
What does that emoji mean? Here’s a list of emoji as JSON, extracted from iOS 10 beta 4.

Keeping up with development

The 10 Best iOS Development Blogs
A list of the the ten best iOS development blogs in no particular order. If you’ve ventured to iOS development then most of these are propably familiar, like raywenderlich.com with great tutorials.

How to keep your NPM dependencies up-to-date
“Tools for helping you keep your npm dependencies up-to-date. See the comments for more tools.” Uptr worked nicely for my use case. (from @jpaakko)

User experience is essential

Developer Experience Matters
“Developer Experience is one of the biggest key factors for developers to decide if they use certain technologies to use. Developer Experience (DX) is a type of User Experience (UX)!” (from @girlie_mac)

Curated list of online Psychology courses
It’s good to understand what drives and affects us and one way to do that is to learn something about Psychology. This curated list of online courses covers topics like Introduction to Psychology, Introduction To Social Psychology, The Psychology Of Persuasion, Psychology of Popularity, Positive Psychology, Logical and Critical Thinking, The Science of Stress Management and Introduction to Consumer Behavior. (from Userfocus Newsletter September 2016)

SXSW Keynote – You Know What? Fuck Dropdowns
35 reasons not to use a dropdown menu. (from Userfocus Newsletter September 2016)

Design Better Forms
Common mistakes designers make with forms and how to fix them. (from Userfocus Newsletter September 2016)

Something different

Transcontinental 2015: Race to Istanbul
The Transcontinental is a race like no other. On the 24th of July 2015, 172 riders arrived in Garaardsbergen, Belgium and raced to Istanbul, Turkey. Much like the early days of bicycle racing cyclist ride with no team cars or soigneurs to look after them. It is each for their own taking on Europe’s toughest terrain. The documentary follows the highs and lows of the race from the view of the Race Directors.

Weekly notes 10

Summer has been relative nice this far even here in Finland and my short holiday is just couple of days away. But before that it’s time to check this years Java tools and technologies landscape report, get some useful plugins for Atom, start developing a React application with no configuration and read about the benefits of Serverless architecture. And while traveling it’s good to listen to podcasts for developers.

Weekly notes, issue 25.7.2016

JavaScript

Create Apps with No Configuration
Developing a React app has lots of things to setup so using Create React App, officially supported way to create single-page React application, as a boilerplate generator is good choice. And with single command, and all the build dependencies, configs, and scripts are moved right into your project so you’re not lock-in.

A Better File Structure For React/Redux Applications
Something to think about how you organize your React code. Similar to how you could organize things with Java application.

Tools of the trade

Java Tools and Technologies Landscape Report 2016
ZeroTurnaround has just released its Java Tools and Technologies Landscape Report 2016, which analyzes the data about the tools and technologies Java developers use. Good to note that the survey received just over 2000 responses.

Atom treasures: a list of Atom plugins I can’t live without
AtomEditor is great for developers and better when extended with plugins. Found some new ones, like sync-settings. (from The Practical Dev)

New DevTools Web Performance Tooling Tips and Features (video)
Chrome’s DevTools is powerful but not always so easy to utilize. Paul Irish and Sam Saccone show off new tips, tricks and features in DevTools to help you debug the performance of your site.
(from HTML5 Weekly Issue 241)

Bash boilerplates
When hacking up Bash scripts, there are often things such as logging or command-line argument parsing that: You need every time, Come with a number of pitfalls you want to avoid, Keep you from your actual work. Here’s an attempt to bundle those things in a generalized way so that they are reusable as-is in most scripts.

Learning new things

79 Podcasts for Developers, Programmers & Software Engineers
Podcasts are incredibly useful for staying on top of all the latest happenings in software development.

Architecture

Benefits and drawbacks of Serverless architecture
Serverless architectures refer to applications that significantly depend on third-party services. But what are the benefits and drawbacks to such a way of designing and deploying applications. (from Java Web Weekly 133)

Something different

Cheating at Pokemon Go with a Hackrf and GPS spoofing
Pokemon Go has taken the world with enthusiasm and it requires you to walk around and explore the city for Pokestops, Gyms and hatching eggs. But why do that if you can cheat? Since the game is GPS based with little tinkering you can spoof your GPS location using a HackRF software defined radio and simulate walking around.

Weekly notes 9

Summer is here and mountain biking trails are calling but keeping up with what happens in the field never stops. This week Apple had their worldwide developers conference which filled up social media although didn’t present anything remarkable. In the other news there was good collection of slides for Java developers, ebook for DevOps and HyperDev looks interesting for quickly bang out JavaScript.

Weekly notes, issue 9, 17.6.2016

Java: stay updated, reactive and in the cloud

13 Decks Java developers must see to stay updated
Selection of nice slideshows for Java developers. Best practices, microservices, debugging, Elasticsearch, SQL.

Java SE 8 best practices
Java 8 best practices by Stephen Colebourne’s is good read. The slides cover all the basic uses, such as lambdas, exceptions, streams and interfaces. (from the “13 Decks Java developers” post)

Microservices + Oracle: A Bright Future
Good slides of what are microservices. Considerations, prerequisites, patterns, technologies and Oracle’s plans. (from the “13 Decks Java developers” post)

Notes on Reactive Programming, Part I: The Reactive Landscape and Part II: Writing Some Code
A solid intro to the reactive programming. And no, it’s no coincidence that this is first. A reactive system is an entirely different beast, and such a good fit for a small set of scenarios. (from Java Web Weekly, Issue 128)

Netflix OSS, Spring Cloud, or Kubernetes? How About All of Them!
The Netflix ecosystem of tools is based on practical usage at scale, so it’s always super useful to go deep into understanding their tools. (from Java Web Weekly, Issue 128)

Takeouts from WWDC 2016


Digging into the dev documentation for APFS, Apple’s new file system

Interesting low level stuff in Mac OS Sierra. APFS takes over HFS+, has native encryption, snapshots (Time Machine done right) and is case-sensitive. Hacker News comments are worth reading.

The 13 biggest announcements from Apple WWDC 2016
WWDC 2016 was about software and incremental changes. Siri is opening up to app developers, iOS is growing up, iOS gets Apple TV remote app and Apple introduces single sign-on system.

Continuous learning

DevOpsSec: Securing Software through Continuous Delivery
DevOpsSec free ebook is worth reading if you’re interested securing software through continuous delivery. Uses case studies from Etsy, Netflix, and the London Multi-Asset Exchange to illustrate the steps leading organizations have taken to secure their DevOps processes.

Microservice Pitfalls & AntiPatterns, Part 1
An anti-pattern is just like a pattern, except that instead of a solution it gives something that looks superficially like a solution but isn’t one. A pitfall is something that was never a good idea, even from the start. (from The Microservice Weekly #31)

Tools of the trade

Introducing HyperDev
HyperDev looks to be an interesting new product at Fog Creek Software (known from e.g. Trello). It’s developer playground for building full-stack web-apps fast. “The fastest way to bang out JavaScript code on Node.js and get it running on the internet.” as Joel Spolsky describes it.

V8, modern JavaScript, and beyond – Google I/O 2016
Debugging Node.js apps with Chrome Developer Tools is soon enabled by coming v8_inspector support.

Something different

Why do we have allergies?
Allergies such as peanut allergy and hay fever make millions of us miserable, but scientists aren’t even sure why they exist.

Weekly notes 8

The Spring has been quite busy at work but Summer is just around the corner and that means either holidays or having some time to learn new things and see how things could be make better. My weekly notes has turned out to be monthly notes but that’s how things sometimes work out. But back to the issue which covers topics about continuous learning, best practices in development, looks into building blocks in Netflix’s stack and how to get started with ELK stack. And for the Summer project there’s Stanford’s Swift and iOS 9 course. Having done my iOS app with Swift it seems to be nice language.

Weekly notes, issue 8, 19.5.2016

Learning new things

Developing iOS 9 Apps With Swift from Stanford
Stanford iOS course is updated for Swift and iOS 9 and is good resource for learning iOS, Swift, or just to refresh yourself on best practices when developing for the platform. (Indie iOS focus weekly, issue 66)

Keep on learning and keep it simple

The single biggest mistake programmers make every day
Nice writeup of basic principles in programming. In short: Keep It Stupid Simple. Make it work, make it right, make it fast. Do One Thing.

Being A Developer After 40
Software development is always changing which this article tells nicely and gives good advice for the young at heart how to reach the glorious age of 40 as a happy software developer. tl;dr; Forget the hype, Choose your galaxy wisely, Learn about software history, Keep on learning, Teach, Workplaces suck, Know your worth, Send the elevator down, LLVM, Follow your gut, APIs are king, Fight complexity,

5 Tips To Improve Your JS with ES6
A well recorded hour long remote talk covering not only some handy ES6 tips, but how to work with ES6 generally and some of the tools available. (from JavaScript Weekly, issue 274)

Microservices, best practices and Java

Microservices are about applying a group of Best Practices
Moving an existing codebase to a microservice architecture is no small feat. And that’s not even taking into account the non-technical challenges. We definitely need more nuanced strategies based on actual production experience with microservices to help drive these architectural decisions. (from Java Web Weekly 123)

jDays 2016: Java EE Microservices Platforms
A lot of people preach that you can’t build microservices with Java EE but Steve Millidge’s talk about Java EE Microservices Platforms tells us that Payara Micro and Wildfly Swarm are fast and have a small memory footprint and that it does not require any code changes to port the application from one to other. (from Java Web Weekly 18/16)

The Netflix Stack: Part 1, Part 2 and Part 3
Microservices architecture in software development is what you should nowadays do but the question is how? The Netflix Stack article series covers some open source libraries you can use to build your architecture. Part 1 covers Eureka for service discovery and Part 2 is about Hystrix, latency and fault tolerance library. Part 3 is about creating rest clients for all of your services. The blog posts are an overview of what you can find in the accompanying repository.

Java app monitoring with ELK: part 1: Logstash and Logback and part 2: ElasticSearch
These blog posts tells you about the ELK stack (ElastichSearch, Logtash, Kibana) which is useful tool for logging visualization and analysis. (from Java Web Weekly 116)

SQL

10 SQL tricks that you didn’t think were possible
Lukas Eder tells you 10 SQL tricks that many of you might not have thought were possible. The article is a summary of his extremely fast-paced, ridiculously childish-humoured talk. “SQL is the original microservice”.

Tools of the trade

mrzool/bash-sensible
“A a simple starting point for a better Bash user experience out of the box.” These settings do make Bash easier and more useful. (from Weekend Reading)

Stranger Danger: Addressing the Security Risk in NPM Dependencies
Presentation from the O’Reilly Fluent Conference by Snyk co-founders which covers recently found exploit, and shows you how to use Snyk in your development workflow.

Something different

Dlexsiya
Interesting simulation with JavaScript how the web looks like to people with dyslexia. In the comments person with dyslexia tells that it’s easier to read when the text shifts. So, would dyslexia mode be good for website UX :) (from Weekend Reading)

Weekly notes 7

Easter and couple of days of free time is good for taking a break from the routines or finally have some time to develop your personal pet projects. At least my Highkara news reader for iOS needs some UI tests for screenshots and maybe I get to finish my imgur app for tvOS. But before that here’s the weekly notes.

This week we get overview to OWASP projects, see how Stack Overflow is built, learn to design for the Apple TV and get to run WebLogic on Docker container. Finally we discover how Spotify Discover Weekly playlists work.

Issue 7, 2016-03-24

Security

Quick developer’s guide to OWASP projects
Interesting poster-type developer’s guide to OWASP projects. Learn how to secure your web apps against common web vulnerabilities.

How it’s built

Stack Overflow: The Architecture – 2016 Edition
If you’re wondering how’s Stack Overflow built and what’s the load check this article. Interesting. Running on Windows using IIS, ASP.Net, .Net, SQL Server and supported by CentOS and Redis, Elasticsearch.

Why I Left Gulp and Grunt for npm Scripts
Cory House explains how Gulp and Grunt are unnecessary abstractions, whereas npm scripts are plenty powerful and often easier to live with. It’s easier to debug as there’s no extra layer of abstraction, there’s no dependence on plugin authors to update, original tool is better and clearer documented. (from Web Design Weekly #219)

iOS and tvOS development

An in-app debugging and exploration tool for iOS
Excellent tool for iOS developer which helps you for example to simulate 3D Touch in the Simulator. Also in Xcode 7.3 you can now simulate 3D Touch without external tools if your trackpad has Force Touch.

Designing for the Apple TV
Michael Flarup writes some tips for getting design right when working with the Apple TV. He covers all of the basics but also some interesting points like making sure you meet the expectations of a TV based platform in terms of displaying and taking advantage of video based content. (from iOS dev Weekly #239)

tvOS.design
This is pttrns for tvOS. Not a huge amount of data in yet but what’s there is worth a look. (from iOS dev Weekly #240)

Enterprise Java

WebLogic on Docker Containers Series: Part 1, Part 2 and Part 3
If you are using WebLogic as your application server, you should have a look at Bruno Borges series about running WebLogic on Docker. First post gets you started and shows how to create a basic Docker image with WebLogic and one with a configured WebLogic domain. The second post takes a more detailed look at the creation of the images, and the third one focusses on the domain configuration. (from Java Weekly 8/16)

Something different

I Documented Two Years of Travel By Painting In My Moleskine Notebook
Lovely hand-crafted art collection created by a traveler during her visits to different places around the world. An alternative to taking thousands of photos that no one will look at afterwards anyway and a beautiful, more emotional representation of lovely places. (from WDRL 126)

How Spotify Discover Weekly playlists work? and Recommending music on Spotify with deep learning
If you’re wondering how Spotify finds the tracks to your Discover Weekly list, read these two articles.

Weekly notes 6

This year has started slowly and weekly notes has frozen to monthly notes. This time they tell us i.a. how to put Spring Boot in Docker, useful features of Java EE 7, ponder what all there’s to do to launch your mobile app, read tips how to get better with Node.js and how smaller is better. And finally we have Yoga routine to keep our body in shape.

Issue 6, 2016-01-27

Java is strong with this one

Java EE 7 At A Glance and Top 10 Java EE 7 Backend Features
A rundown of some of the most useful Java EE features – most of which look quite handy.

New year’s Spring Boot tricks in a container
Read how you can combine Spring Boot’s hot restarting and running application in a Docker container. Of course you could just run Spring Boot from the IDE and expose the MongoDB container port for the application.

Nashorn: Run JavaScript on the JVM
Nashorn is a high-performance JavaScript runtime written in Java for the JVM. It allows developers to embed JavaScript code inside their Java applications and even use Java classes and methods from their JavaScript code. But why would you want to do that?

Mobile app development is fun?

Everything you need to launch your app
Good checklist to go through during app development and when you’re going to launch your app. Launching an app isn’t as straightforward as you would think. (from Indie iOS Focus Weekly 48)

Everything you need to know about app screenshots
And with everything it really means that. Making screenshots of your app isn’t as easy as you would think. (from Indie iOS Focus Weekly 46)

Creating perfect App Store Screenshots of your iOS App
More about app screenshots. This time doing it “the right way” for all device types and languages. Isn’t easy this time either but it’s automated. You just need to use snapshot, frameit and to use UI Tests.

Why you shouldn’t bother creating a mobile app
Post-mortem of Birdly, a receipt management app in the business to business market. Gives insight and lessons to learn about the App Store. Even though the app had good use case the users didn’t really need it. (from Indie iOS Focus Weekly 48)

Tools

Find & fix known vulnerabilities in Node.js dependencies
Snyk looks to be quite crafty tool to find & fix known vulnerabilities in Node.js dependencies. Integrate Snyk into your CI and monitoring your applications for newly disclosed vulnerabilities.

TL;DR; Simplified man pages
Simplified man pages for when you just need to get shit done. Finally! You can use different clients for it and install if from e.g. npm install -g tldr.

pre-commit hooks
Some out-of-the-box hooks for pre-commit. See also: pre-commit.

Getting better is good?

Reduce Your bundle.js File Size By Doing This One Thing
Simple! Use relative file paths. The article looks at two examples to show the difference.

The Website Obesity Crisis
Keynote from Web Directions 2015: The Website Obesity Crisis. Beautiful websites come in all sizes and page weights but mostly-text sites are growing bigger with every passing year when there’s no reason for that. There’s also video.

How to Become a Better Node.js Developer in 2016
Tips and best practices not just for development but how to operate Node.js infrastructures, how you should do your day-to-day development and other useful pieces of advice. (from Twitter)
TL;DR; Use ES2015, follow callback conventions and async patterns, take care with error handling, use JavaScript standard style, follow the Twelve-Factor application rules, monitor your applications, use build system, update dependencies weekly and keep up.

Something different

15-minute yoga routine to enhance balance and agility
See how yoga can help you to enhance your balance and agility, including a 15-minute video that demonstrates these principles. This is targeted more for mountainbike riders than developers but better agility and balance doesn’t hurt anyone :)

The 100 best photographs ever taken without photoshop
Nature and humankind are both great artists, and when they join forces, amazing masterpieces can be produced.

Weekly notes 5

Christmas holidays is soon here but before that it’s time to see what I’ve read this week. I’ve been playing with legacy Java EE 5 development and came across System Integrity Protection in OS X which prevents you of installing JDK 5. And on top of that I just wish I could run OC4J with JDK 5 on Docker as you can do for WebLogic 12.2.1. In security point of view there was startling announcement as Juniper Networks had found backdoor in their firewalls code. We also learn the basics of web accessibility and if you’re not using dotfiles and you’re on Linux or OS X, now is a good time to start.

Until next week, Happy Holidays!

Issue 5, 2015-12-23

Technical

Survey of essential tools/frameworks for the modern Java developer
Opinionated choices for modern Java developer.

Java EE Kick-off app
Java EE kickoff app is an app skeleton that demonstrates a couple of technologies:
JSF 2.1 views, CDI backing beans, JASPIC authentication, EJB services, Bean Validation, JPA models, Java EE 6 and H2 database.

What is the “System Integrity Protection” feature in El Capitan?
I was developing legacy Java EE 5 application and came across problems with installing JDK5 for OS X El Capitan. Turns out that even with root you can’t modify certain directories. It’s for your own protection. Annoying.

The Serverless Start-Up – Down With Servers
Do you need servers? Using AWS Lambda to build a startup that has no servers per se. (from Weekend reading)

The web accessibility basics
List of absolute web accessibility basics every web developer should know about and which are extremely easy to implement but matter a lot. Next time you build something, consider incorporating those few things. (from WDRL 117)

Tools

3 Disasters Which I Solved With JProfiler
Interesting article of using JProfile to solve problems caused by using JPA and Hibernate.

WebLogic 12.2.1 on Docker
Interesting article with examples of how to run WebLogic 12.2.1 on Docker as I just played with Vagrant and Ansible for creating legacy Java EE 5 development environment with OC4J. Maybe in the future legacy environments are easier to manage as you can virtualize them more easily.

Unofficial guide to dotfiles on GitHub
Good source for dotfiles with different environments and tools. I’ve found that Mathias Bynens’ OS X defaultsscript is legendary. (from Hacker News)

To think about

One Googler’s take on managing your time
If you don’t have time to read this… read it twice. The maker’s day is most effective in half-day or full-day blocks. Commit to protecting Make Time on your calendar including the time and place where you’ll be making, and ideally detail on what you’ll be making. That way, you know, it’ll actually happen.

Security

Detect and disconnect WiFi cameras in that AirBnB you’re staying in
There have been a few too many stories lately of AirBnB hosts caught spying on their guests with WiFi cameras, using DropCam cameras in particular. Here’s a quick script that will detect two popular brands of WiFi cameras during your stay and disconnect them in turn.

Researchers Solve Juniper Backdoor Mystery; Signs Point to NSA
Internal code review pays off for Juniper. This week Juniper Networks revealed in a startling announcement that it had found “unauthorized” code embedded in an operating system running on some of its firewalls, ScreenOS. As the terrific summary of the Juniper backdoor explains, it allowed attackers to take complete control of Juniper NetScreen firewalls. This is a very good showcase for why backdoors are really something governments should not have in these types of devices because at some point it will backfire when other hackers will piggyback on top of existing backdoor to build their own backdoor.

Instagram’s Million Dollar Bug
tl;dr; Security researcher finds remote code execution vulnerability in Instagram which pivots to getting all kinds of data from AWS S3 but Facebook CSO plays it down to trivial and a thing which violates the poorly worded whitehat program rules. The point of this story is that Facebook fails on their bug bounty program as their actions show that it would be better just to “sell million dollar bugs on the black market for a million dollars” and not get threaten with legal actions for just being a good guy.

Something different

20+ Cheatsheets & Infographics For Photographers
Informatic cheatsheets for photographers covering various aspects of photography. Also a good resource for fresh and new ideas.

Weekly notes 4

This week there are couple of books to read which helps you to learn functional programming, realize that you don’t know JavaScript and helps you to build Kanban board with Webpack and React. Also you can read thoughts on securing OS X, get some information about Spring Boot memory performance and read about reasonable approach to React and JSX. Happy reading.

Issue 4, 2015-12-16

Technical

Spring Boot Memory Performance
Interesting article about Spring Boot memory performance (and tools to measure it). But shouldn’t we compare it to Java EE?

Hibernate Logging Guide
Logging database queries with Hibernate is relatively easy but it’s good to recall the logging options. Like use different log categories and don’t use show_sql to log SQL queries.

Here are some of the best resources to learn about PHP 7
PHP 7 is out and it might be time to learn more about it and migrate from 5.6.X to 7.0.X. For example benchmarks of WordPress using PHP 7 are showing a 2-3x speed improvement. The only question is if the plugins are ready for PHP 7? (from WDRL 116)

Airbnb React/JSX Style Guide
“A mostly reasonable approach to React and JSX” (from Weekend Reading)

Books

Professor Frisby’s mostly adequate guide to functional programming
Book on the functional paradigm in general which uses the world’s most popular functional programming language: JavaScript. Available in ePUB, MOBI and PDF.

You Don’t Know JS (book series)
Series of books diving deep into the core mechanisms of the JavaScript language. The series is released in GitHub as drafts, free to read and you can get buy them through O’Reilly.

SurviveJS – Webpack and React
SurviveJS – Webpack and React shows you how to build a simple Kanban application based on these technologies. There’s a free online version of the book and Leanpub version with extra content.

Good to know

What the Web Can Do Today
Good list of feature sets on the web. Includes code examples.

OS X security and privacy guide
Collection of thoughts on securing a modern Apple Mac computer using OS X 10.11 “El Capitan”, as well as steps to improving online privacy. Targeted to “power users”.

Something different

Empire of Code
Empire of Code is a space game with a mix of strategy, tactics and coding.
You can play the game with or without coding skills, but knowing how to code will definitely give you an advantage. Unleash your Python and JavaScript skills.

Empire of Code

Weekly notes 3

It has been rainy week here in Finland with pre-christmas parties (again) and also our 98th independence day. Yay! This weeks articles are about JavaScript, Microservices, User experience and tutorial for ToDo app with React.js.

Issue #3, 2015-12-09

Technical

Advancing JavaScript without breaking the Web
Christian Heilmann presented earlier this year at the MunichJS meetup how the advancements in ECMAScript (aka JavaScript) are a great opportunity, but also a challenge for the web. His article with slides and video takes a look at how whilst adding new, important features we’re also running the danger of breaking backwards compatibility.

Spring Boot Microservices, Containers, and Kubernetes – How-to
Ray Tsang discusses how to create a Java-based microservice using Spring Boot, containerize it using Maven plugins, and subsequently deploy a fleet of microservices and dependent components such as Redis using Kubernetes.

Building for HTTP/2
Rebecca Murphey shares the fresh concepts of HTTP/2 and how it will affect our tool and build-chain for JavaScript applications. A few good thoughts in there that we can keep in mind to optimize the delivery of large-scale front-end applications. (from WDRL 115)

User experience

How to fix a bad user interface
Some good advice how to fix a bad user interface. tl;dr; Handle your app User Interface states. (from Hacker News)

How Apple Is Giving Design A Bad Name
“Apple is destroying design… revitalizing the old belief that design is only about making things look pretty.” And with recent iPhone Battery case Apple looks to have lost the spark. (from Userfocus Dec 2015)

Good to know

Using the HTML5 Fullscreen API for Phishing Attacks
I was wondering why browsers show the “annoying” message when you go into fullscreen mode but it’s there for a reason, to let people detect phishing attacks. (from WDRL 115)

Tools of the trade

Let’s Encrypt now in public Beta
Let’s Encrypt is a new Certificate Authority with the goal of helping everyone encrypt. It’s free, automated, and open. Now in Public Beta so you can give it a try by following this guide. (from Hacker News)

Must see JavaScript dev tools
A great walk through some of the greatest JavaScript developer tools that currently exist and why Eric uses them. (from JavaScript Weekly 261)

Linux Performance analysis in 60s
Netflix blog presents tools for doing Linux Performance Analysis in 60,000 Milliseconds. (from Hacker News)

Gadgets

Raspberry Pi Zero: the $5 computer
Raspberry Pi gets even smaller and cheaper with the Zero and provides almost the same processing power as the original. Unfortunately they sold out quickly and didn’t get one yet. (from Hacker News)

Getting started

How to Build a Todo App Using React, Redux, and Immutable.js.
Build a test-driven example “Todo Application” using React. So many new tools to go through. (from JavaScript Weekly 261)

An Introduction to ClojureScript tutorial
ClojureScript is a popular Clojure to JavaScript compiler. (from JavaScript Weekly 261)

Something different

Brikbook
MacBook case you can decorate with Lego bricks.