Mastering Web Application Development with AngularJS review

It wasn’t obvious for me how to start learning Angular because of the flood of information about it. I needed to take off the ground an Angular-based business application as quickly as possible. I’m a book type of guy, I find it as one of the greatest pleasures to be able to learn from the books. I’ve started learning with some other book, but I ‘ve quickly got bored with it. Next was a nice Pluralsight’s screen cast that has helped me to kickstart my project a lot. Though it was a useful, I’ve needed a solid reference book to address my questions. Without further due I come to this book as a source of true Angular craftsmanship.

The book doesn’t tend to teach you the basics of the framework (which is huge). On contrary it tells you the cases and useful patterns where the framework really shines. At the same time it’s not a pray for Angular, it tells you about the drawbacks and tradeoffs that it has. As a pragmatic developer I would definitely recommend this book for those who strive to obtain a practical knowledge.

My score 4/5

Author's profile picture Michael Koltsov on stuff

My summer vacations: San Francisco -> Redwood forest -> Fort Ross -> Napa Valley -> Yosemite park -> Sequoia forest

Author's profile picture Michael Koltsov on stuff

Programming Google glass: Mirror API book review

This time my intention to read a book was simple, I was trying to decide if it’s worth developing for Google glass because of the limitations it imposes.

There’s a certain lack of books for the Glass explorers. The fact that this book exists is a delightful exception. The book exactly does what it promises. An ability to develop web apps for Google glass. Though there is a lot of manuals from Google to achieve such a goal, but I feel confident after reading a book that’s not affiliated with a certain vendor. Vendor’s books tend to lie, that’s the main point after years of tackling distinct API’s.

Apart from that the the book is great, it teaches you how to make it with Google glass in a succinct way. It can be easily read in a couple of days. My only issue with it was a lack of material covering the native development process for the goggles. If all you need is mirror api than this book is sufficient, but if you feel pain because of the mirror api handicaps I recommend you to find another book which covers GDK.

My score is 3/5

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

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