Development Sandbox: String Concatenation

When you review and work with other people’s code you sometimes find some tricks to optimize your own code. Most of the time the tricks look impressive in their succinctness and streamlined approach. And so you’d assume that the performance behind the scenes would be mind-blowing. So I decided to have a look at string concatenation. I have seen a number of ways to concatenate strings. Usually, the ones that do everything within scope will do it properly. And there are concatenations done other ways for appropriate reasons. But I thought I’d still have a look at the many ways one can concatenate a string.

Continue reading “Development Sandbox: String Concatenation”

Development Sandbox: Java code inlining

Once in a while, it’s fun to take out the Java development tools and experiment. So I did just that. I went online and found a bytecode editor that does a quick job of parsing Java class files. I wanted to see what my code looked like in bytecode form. I wanted to test if a complicated if condition would get inlined. You know what I’m talking about. You’ve written that complicated condition fairly often. You need to validate that the variable you’re testing against is not null and is accessible. Continue reading “Development Sandbox: Java code inlining”

Using scripts to improve your workflow

Development these days is very complicated. You have to contend with many types of technologies. Source code management. Maven or Gradle build scripts. Testing of all sorts. Deployment to various destinations. The permutations are endless. CI/CD (continuous integration & continuous deployment) tools like Jenkins can handle several of these challenges. But sometimes all you need is a simple script to do the job. Continue reading “Using scripts to improve your workflow”

I’m a rebel and no one understands me

A couple of weeks ago I found this image on LinkedIn and was immediately in awe. It describes me perfectly. Yet, some managers can be afraid of these types of employees as they can be aggressive achievers. I know I’ve run into issues a few times where I’m not able to achieve my full potential for one reason or another and it’s frustrating. Continue reading “I’m a rebel and no one understands me”

Why we’ll never time travel.

Time travel is possible. Theoretically anyway. Or so I’ve read. The mathematics prove it. The theory of relativity says it so. Yet no one as of today has travelled any when. No one born before today, anyway. But what if time travel were actually possible, beyond theory. What if it was just a matter of attaining more computing power and using the right materials to build the time machine. Perhaps not today, or tomorrow, but let’s say within the next one to two hundred years it had become somewhat practical to do so. How could we prove for sure that someone had achieved it?

Everyone has their story of having met someone that they thought could have come from another time. I remember when I was younger working in a department store. a customer had asked me if we accepted cash. Another time, I received a spam email from a supposed time traveller who needed parts for his time machine. This one I was more inclined to believe was true since the traveller never asked for money, only ship parts that most probably still won’t exist until we build a time machine. Continue reading “Why we’ll never time travel.”

Artificial Intelligence in the News – April 2017

Artificial Intelligence is certainly a strange beast. I’ve read some really interesting articles on the subject recently on how creative and aggressive they can be. Below are the more interesting ones I’ve read.

AI does Knock Knock Jokes

AI Gets Aggressive when playing games

Japanese AI Writes a Novel, Nearly Wins Literary Award

Listen to New Google AI Program Talk Like a Human and Write Music

Can artificial intelligence read a tweet’s sentiment?

Learning the Basics of Machine Learning

Educating yourself on machine learning is a challenging preposition. There is so much content online that it’s easy to get fooled into reading an article that is beyond capabilities. Unfortunately, in many cases, reading and rereading this sort of content is often the only way to crack that nut open. But recently I’ve found some great resources that should hopefully be able to help the uninitiated into getting a foothold into this popular segment of IT. Continue reading “Learning the Basics of Machine Learning”

Taking on Machine Learning

About two months ago I took steps to get into the Machine Learning bandwaggon. It was tough to take that first step for many reasons. The first was the tough decision of choosing the right programming language to learn. Did I want to stick to the JVM and Java or chose another JVM language? Take up Python. Or learn something else. This article from KDnuggets made that decision much harder. Luckily, due to circumstances from a recent project, I decided to turn to Scala. And so far, I haven’t been disappointed. Continue reading “Taking on Machine Learning”

The Best Scala Programming Resources

In the last few weeks that I’ve spent learning Scala I’ve discovered several amazing online resources. So much so that it made it difficult to justify purchasing a book, even though I did buy the much-recommended Programming in Scala title. Every time I needed help in figuring out how to do something, the following websites were indispensable.

Some of these sites are no longer active, but the information they provide is still very much relevant to new and experienced Scala programmers. Continue reading “The Best Scala Programming Resources”