Professional Node.JS book review

My motivation for reading this book was simple. I needed a technology that would allow me to build backend as quickly as possible. There were 2 candidates for that: Ruby on Rails and Node.js. I’m not very proficient with Ruby, because of that learning a JavaScript-based technology was the most obvious choice for me.

The book is great. It’s neither small nor large. It has a perfect size of 4 hundred pages that can be easily digested throughout the week. Every chapter has an introductory for those who hadn’t an experience with technology it tells about. I was kinda amused with such small pieces of text about UDP and TCP. I’ve forgot a lot about the basics of what I usually do.

The book is full of small but useful examples from the real life. If you’ll cram through the book at a stallion pace (as I did) for the end of the week you would be able to build a small but full functional websites and back end systems using node.js&REST&NoSql. I did it as a hackathon project for less than 5 hours.

My score 5/5

Author's profile picture Michael Koltsov on backend, books, and mobile

Apache Cordova 3 programming book review

I’m learning if Cordova is able to solve the problems I’ve struggled with while developing an app using the native approach of Mobile Development.

I’ve watched a video course on Lynda.com, but it wasn’t a remedy. Screen casts can be easily digested, but I can hardly remember a thing after some time has passed.

That’s why I’ve bought this book. Basically, the Cordova programming book disappointed me. The book contains a bunch of examples that can by found on its github repository for free and two hundred and a half pages that are completely useless because all the information they contain can be found on Apache Cordova website for less than nothing.

Actually some tips were useful, but a single blog post would be a more suitable form for them.

My score 2/5

Author's profile picture Michael Koltsov on mobile

The busy coder’s guide to Android development review

coverThis year i’ve tried to give Android as a developmnent platform a second try. Previously i had a harsh experience with it, mostly because of the fact that it’s environment was inmature. Eclipse with it’s sophisticated Android plugin and Ant were not helping me in keeping sanity at all. It was a mess! Everytime i was executing Android’s emulator my Macbook Pro was acting as it was a typewriter with no multitasking at all.

This time everything has changed. Android’s dev  tools became very mature, as well as the Android’s ecosystem.

Basically, i had to start from scratch in the Android learning process. It’s learning curve is very lean, but at the same time Android’s API is very broad and it’s still constantly changing.

This book is a perfect solution, it consists of 2000+ pages! It covers most of the topics i had to deal with. It has a Github repository, which has a enormous broadth of examples! From simple activities to dealing with NDK, this book has a chapter and a code to tackle in.

My only issue with it is the price. Currently it costs more than 40 bucks, which is kinda huge for an ebook. I had my concerns with it, that’s why i went on with a free outdated version. If i’ll find a way to make some money with Android, i’ll totally buy a full version which is updated with every major Android release!

My score 5/5

Author's profile picture Michael Koltsov on stuff

Spring in Action book review

It was an easy and pleasant job to write a review for this “Spring in Action” book. Though it’s almost three years old it’s still considered to be one best book about the Spring framework. My opinion might be not too poetic, albeit I’ve enjoyed reading the book.

Every Jvm-concerned programmer knows that Spring is huge and it’s constantly evolving throughout all these years. There are some books that are much thicker and they cover more Spring components. Some of them are really gigantic manuscripts. But what is the point? As I said Spring is evolving, the Api is changing all the time. By all means these manuscripts will be mostly outdated by the next major release. What was the Chris Walls’ solution?

This book covers only the Core concepts of Spring:DI, AOP, security, web tier, messaging etc. It inspires you to think how to solve this or that problem that you encounter in a Spring-esque way. It doesn’t provide a solution for every problem, it provides the way of thinking that solves it flawlessly. It gives fish tool? Instead of a fish.

By the way using Spring in Scala is not so painful as you might be concerned. Some concepts are useless (like dependency injection, velocity integration) but things like templates can do much for keeping your sanity.

My score for this book is 5/5

Author's profile picture Michael Koltsov on java and scala

Testing in Scala book review

Intent for reading this book was trivial. I needed it to take full responsibility for testing an application at my job. This doesn’t happen every day. Most of the books I’ve read had no trivial connection with the things I do for living. That was an exception. I hope that in future it will happen more often. One of the most exciting things I find in IT is an ability to use the newest technology(sometimes inmature) available.

I hope it didn’t sound as bloated as it seems to me =) The job I needed to do was as simple as usual. There were a bunch of JUnit tests, I needed a tool to write more of them with a speed of sound. The most obvious thing for me was to refactor the existing test codebase to bring some Scala seasoning  in it. That took almost no time, thanks to Maven and it’s Scalagen plugin.

While looking at Junit tests written in Scala, Spring and Hamcrest I had a feeling that I’ve missed something. Scala syntax was consise, but the style of writing the unit-tests was still Java-like. That means it was bulky and too verbose.

Here comes the “Testing in Scala” book. If every book is considered to be a motor ride this particular book would be a driving on a highway in a sports car.

It gives you only what you need. The introduction to Scala-esque way of writing a unit test, all popular frameworks are included.

There’s no much talk about the trivial things like some other books. Only brief recital of how to write consise tests in JUnit and how to use ScalaTest, Scalacheck etc. You could read it throughout a day! I like the book so much that i’ve started to use most of the things from it in my own projects.

If you find yourself writing a test in any Jvm – based language you should consider reading this book.

My score 4/5

Author's profile picture Michael Koltsov on stuff

Is Google Guice still relevant?

I haven’y used Guice for a long time, because most of the projects i tackle have Spring under the hood . But still, Google Guice was the fist framework that introduced me to the world of Dependence Injection.

Packt has published a new book about Guice, so i’ll give a try.

http://bit.ly/17uo6rN , started reading and review of the book will follow.

Author's profile picture Michael Koltsov on java and stuff

Windows XP is still alive!

My wife needed some Windows specific software on her laptop, so i had to install it. My choice was obvious, because the last OS from Microsoft i’ve used was XP. Installing VirtualBox on Xubuntu -> Downloading XP & Office through MSDN -> Installing it & some minor tweaks took me a couple of hours.

Wow! Windows XP consumes resources next to nothing! Windows 7 & Windows 8 are enormous computer performance suckers! Windows xp can live on 256 mb of RAM! That’s unbelievable!

My final thought is that if you’ll ever need a small windows computer beast consider XP as a perfect candidate!

Author's profile picture Michael Koltsov on stuff

Getting Started with Google Guava

I was asked once during a job interview “Why do you appreciate Google libraries so much?”. The question was asked in a company that makes most of its profits out of Google’s Android technology.

Google gives a lot of its technologies to open source community. But the most interesting thing is the quality of code base in that projects. I’ve seen most of Java libraries brought by the company and they look astonishing!

If you’ve ever heard about such people as Joshua Bloch, Kevin Bourrillion, Chet Haase and Thor Norbye you’d understand why i use Google’s libraries in every project i touch.

Enough blabbing, this book is about one of the Google’s effort to mitigate the age of “Java the language” – Google Guava (formerly Google collections). The book has 142 pages.

Look at the contents:

Chapter 2: Basic Guava Utilities

Chapter 3: Functional Programming with Guava

Chapter 4: Working with Collections

Chapter 5: Concurrency

Chapter 6: Guava Cache

Chapter 7: The EventBus Class

Chapter 8: Working with Files

Chapter 9: Odds and Ends

Looks clumsy? Yes, it is! Basically the most valuable part of the book are the code examples. The rest will give you the same pleasure as reading JavaDoc.

My score is 2 out of 5.

Author's profile picture Michael Koltsov on java

Instant Apache Camel Messaging System

Here’s a deal that some of the software developers face with on a daily basis. You see someone’s code that you have no idea how to work with. Maybe be because of lack of knowledge/frameworks/time constrains, you choose.

What’s the best practices how to deal with such a problem? You can dig in that code and spend a bunch of time to understand how it works. As you gain more experience you’ll know that there’s another path. As a pragmatic programmer i try to teach myself before i’ll get stuck in an awkward situation.

My problems were couple of frameworks i’ve never used. I didn’t have too much time to learn all about them, so i’ve decided to study them in an easy way. I started to dig myself into Apache Camel.

Packpub is a some sort of a mad publisher. They issued 2 books about Camel this year almost at the same time. I choosed this particular book simply because it was a little bit longer. It has 78 pages!

Ok, this book doesn’t try to teach all the bells and whistles Apache Camel can get you. But it’s a perfect source if you want to start as quickly as possible. The book can be read in a couple of hours! That’s mad! Every chapter has a link if you need to learn something deeper.

My score is 4 of 5

 

 

 

Author's profile picture Michael Koltsov on stuff

The passionate programmer

This was a first non tech book i’ve read for a loooong time. You know, it was fun!

The book doesn’t try to teach you how_you_should_write_your_software. On contrary it tries to teach you some things that a normal software developer wouldn’t think about. Things like “Mind Reader”, “Daily Hit”, “. You’ve Already Lost Your Job “. I like to think of this book as a set of patterns i would consider highly valuable.

I made a list of that patterns and i’ll try to stick to it =)

My score is 5 out of 5

Author's profile picture Michael Koltsov on stuff

Welcome to Jekyll!

You’ll find this post in your _posts directory - edit this post and re-build (or run with the -w switch) to see your changes! To add new posts, simply add a file in the _posts directory that follows the convention: YYYY-MM-DD-name-of-post.ext.

Jekyll also offers powerful support for code snippets:

def print_hi(name)
  puts "Hi, #{name}"
end
print_hi('Tom')
#=> prints 'Hi, Tom' to STDOUT.

Check out the Jekyll docs for more info on how to get the most out of Jekyll. File all bugs/feature requests at Jekyll’s GitHub repo.

Author's profile picture Michael Koltsov on Thriller, Comedy, and Horror

The Well-Grounded Java Developer

This book’s review.

This book’s authors tried to write an all-around guide for the new coming Java developers.

But Java is too broad to cover all the different topics in just one book.

That’s the main problem with this book: an attempt to include everything that they could in 400 pages.

The book is great! There’s no other book that starts from low-level options of Java NIO and ends with a high-end view on current set of Java web frameworks.

Was it necessary? I doubt.

From my perspective it’s impossible to do what authors intended to do.

Java is a language that has been evolving for more than 15 years. It has an army of adopters, enormous amount of frameworks and a huge set of JVM-based languages.

I bet that you should read this book only if you’re a fresh grad that’s eagerly searches to land on a first job.

I agree with author’s choice of languages and frameworks that they tell about in their book. But is this set crucial for EVERY java developer. I doubt.

My score is 3 of 5

Author's profile picture Michael Koltsov on java

What’s AngularJS?

AngularJS is a MVC framework brought by Google which is totally awesome! Here’s the proof!

Author's profile picture Michael Koltsov on stuff

Great talk

I really like this talk by Fitz&co because writing software is not an art it’s a craftmanship and it proves that.

Author's profile picture Michael Koltsov on stuff

The Google Resume: How to Prepare for a Career and Land a Job at Apple, Microsoft, Google, or any Top Tech Company

First of all i should say that i deeply appreciate what Gayle Laakman usually does. Last year i spent a lot of time on her careercup.com website. Also i’ve read another book of her, which is “Cracking the coding interview”. After that don’t blame me if i’m too much biased.</br>

What this book is about is obvious if you’ve read it’s title. The book is about how to write a resume to take a job in one of the top-notch tech companies of our time. There’re not so many companies every fresh grad dreams about, but the author promises that after reading this book you would certainly land on an interview in one of them.</br>

Is it true? If you’ve reluctantly searched for a job for a year or two this book is definitely not for you. First of all i believe that Gayle’s main audience are not-so-long-graduates or those who search for their first IT job. The main reason for that is a fact that Gayle doesn’t write anything new for an experienced job seekers. Things she says may seem obvious for those who’s got some job experience corollary some experience of searching for a new employer.</br>

If you’ve eagerly read all Lifehacker’s and LinkedIn job searching articles for a month or two you would get much more experience in writing a resume. But if you don’t have so much time or your skills seems a bit rusty this book is a perfect resource!</br>

It’s doubtfully that you can find all the recipes Gayle Laakman writes in her book in one place. I’m sure you won’t be able to read all these books or articles in a day or two. This book i’ve read for a few days. If you need a quick source for refreshing your job-placing experience i would totally recommend this book to you.

SCORE 3/5

Author's profile picture Michael Koltsov on interview, resume, and stuff