On The Newtown Tragedy

This is the worst of the worst that could have happen. An adult goes out and simply kills young children in cold blood. This guy is monster, it’s clear. But the reasons why it’s happening in the USA are a lot deeper than one may think. We live in the over-developed society, but lots of people are not ready to live their lives in such a stressful society as the USA. Lots of people become mentally unstable. Lots of people start taking antidepressants at the young age. The Pharmaceutical companies are pushing people to be on drugs. Missing a pill can turn some people into psychos.

The USA is a free and liberal country and they don’t lock people in the psychiatric institutions unless they present clear and obvious danger to the society. But many of such not so obviously crazy people live among us, while they should be living in some kind of closed communities under surveillance of the professional medical doctors.

Of course, the first reaction of many people is that the assault weapon should be banned. OK, if no semi-automatic guns would be allowed this guy would have killed not 20, but 5 children. Is this our goal? I don’t see it this way. Don’t blame the knife if you cut your fingers. The goal is to identify unstable people and limit their chances to kill. I’m not qualified to judge is this gunman belonged to a mental institution, but at least as soon as he showed some signs of abnormality, his relatives should have been forced to surrender their legally purchased weapon. This cold blooded killer would not have a chance to use the guns purchased by his mother.

Any prescription of the anti-depressant drugs has to be reported to the police, which should trigger an investigation of the patient’s surroundings. If a person is diagnosed with any form of autism his relatives can’t have any weapons.

We started seeing such tragedies way too often. The Malcolm Gladwell’s book “The Tipping Point” explains the laws of the society that can lead to the epidemics as soon as certain little things reach a tipping point. I believe if the situation with treating unstable people won’t change, we’ll see massacre epidemics here in the USA.

My heart goes out to all the relatives of all Newton’s victims, but first – to the parents of these little innocent children. Their parents are not dead, but they are not alive either.

Bought a new phone

My new phone has arrived. I decided to buy it after the hurricane Sandy hit our area. My cell phone didn’t work. My landline phone wouldn’t operate without the electrical power, which we didn’t have. In software architecture we have a term: a single point of failure. A pre-requisite to have the power line to operate a phone is an overkill. And now this beauty has arrived. It doesn’t need the power line: one wire goes into the phone jack and this is it.

In software I love the KISS principle: Keep It Simple Stupid. My new phone was designed just like that. The dial tone is loud and has no static noise. I’ll tell you more: it even has a lighted keypad. It’s cheaper than iPhone and doesn’t require a two year contract. Can’t go wrong for $9.99.

Ladies and Gentlemen, please welcome, the AT&T Trimline Telephone:

photo (47)

The evolution of a flashlight

When I was a kid we didn’t have iPhones. As a matter of fact we didn’t even have Internet. But we did have cool gadgets too. One of the coolest things for boys was a three-color flashlight. It was in a metal rectangular body with three sliders to select a color. It looked like this:

fonarik

What could be better than this flashlight? Ok, those ballpens with girls that would undress when you turn the pen upside down were probably cooler than those flashlights. But could you imagine flashlights with advertisements? I have a pretty useful application on my iPhone. It’s called Flashlight and it is a flashlight.It emits pretty bright beam of light, which is pretty handy during the hurricane Sandy or if you need to find that ballpen with a naked girl in the middle of the night. This application was free. Being a software developer myself I understand that you don’t have to be a rocket scientist to write such an application. But you do have to think out of the box to come up with this idea to turn the camera’s flash into a flashlight.

Today I noticed that my flashlight have changed. Now it not only emits the light, but shows an advertisement too.

photo (5)

I understand that software developers need to make money, but do the authors of this program believe that if I wake up in the middle of the night to pee, I’ll be walking to the bathroom reading about Daily Hot Deals? Well, the world is changing, and the flashlights are evolving too. Can’t stop it.

Android is in deep…sleep

Three days ago I was dining with friends at a restaurant. One lady picked a large device from her purse and bragged that this nice looking thingy is a spare battery from her Android phone. This put a smile on my face as I can’t visualize a women who walks with an extra battery for her iPhone. Google’s devices are nice, but the Apple one are just a little better. And this is what matters – to be JUST A LITTLE BIT BETTER.

I also have a Google device. One. It’s the Nexus 7 tablet. I bought it this Summer and used for about 50 hours total since then. I like it, but don’t love it. I can do everything with my iPhone that I can do with my Nexus 7, but iPhone is just a little bit better. No, I’m not one of these Apple fanboys who don’t want to see a device unless it has Apple logo on them. I bought Android device, right? I gave it a chance. I keep it on the kitchen table to read the news over breakfast.

Two months ago my Nexus wouldn’t start. The screen remained pitch black. After short googling I found an advice: press and hold the power button for 30 seconds, and it’ll start. As they said, sometimes Android devices “go to deep sleep”. Anyway, it worked, yay!

Today, I needed a screenshot from the Android device for the book chapter I’m working on now. The Nexus tablet was plugged into the power outlet for the last 24 hours. It wouldn’t start. My 30-sec trick didn’t help either. Then I hold it for 45 sec. Plugged in and plugged out. Nothing. Nada.

Called Google support. Need to admit – they picked up the phone pretty fast, the guy was polite and helpful. I told him that I already pressed the button. He suggested to press all three buttons that exist on the device: the power and two volume buttons. This put some static white dashes on the screen. After several similar attempts we were able to bring a menu for hard reset. The Google guy warned me that I’ll lose all the data that might have been saved on Nexus. I agreed. It didn’t help. The devices couldn’t be revived. This time it was not in deep sleep, but rather in coma.Google will send me a new device and the UPS shipping labels for my defected one – should arrive in a week.

What do I feel? Peace of mind. I’m not angry with Google. They tried to help. But there is not much they could do other then pressing these stupid buttons. I’d be a little bit more happier if the’d send me a replacement quicker. But hey, then they’d be as good as Apple, which they’re not. Remember, all it takes is just to be a little bit better than others. That’s all. But I like Google. I respect Google developers, and I like the way this case was handled by Google support.

BTW, one of my New Year’s resolutions is to start going to the bathroom without holding any electronic device in my hands. Do you think I can do it? I doubt it. Can you?

Starbucks and Programmers

I’m not a Starbucks regular. I go there once in a while. Many years ago, when I went there for the first time and asked for a small cup of coffee, the girl behind the counter said, “So you want a tall coffee?”. Then she explained that tall was the smallest size they had. I’m sure some smart marketing person suggested that calling a cup “tall” is better than “small”. It makes a customer appreciate the value of the purchased product. It’s better to buy something tall than something small for the same amount of money. Devaluation of sizes in action.

When I receive a resume from a 23-year old senior software developer from overseas, I think of that tall cup at Starbucks. They want me to appreciate the deal – I’ll be getting not just a software developer, but a senior one for the same price. Being still in the Thanksgiving state of mind, I’m thankful that the USA is better in this regard too. I can’t recall seeing any American college graduate calling himself a senior software developer, and rightly so. Even if a 23-year old has a BS in Computer Science from MIT or Stanford, he’s are not a senior software developer. He has better chances to become one than a graduate of a local community college, that’s for sure. But let’s not confuse the ability to produce 20 if-statements per minute with being a well rounded software developer with 5 years of the real-world experience.

Every time when I visit Starbucks I ask for a small coffee pretending that I don’t know that it’s called tall. For some reason I feel better this way. OK, gotta run. Let me put on my Hugo Boss jacket of the XL size and go to work. Well, I’m not really that big, but XL is makes me feel a large man. What’s your size?

The iPhone 5 and Sprint Story

Part 1. From the old HTC to the new iPhone5

My son had a birthday this month and I decided to buy an iPhone 5 as a present. He’s been a Spring customer for the last 10 years and was happy with the service. So I went to the closest Sprint store and asked if I can upgrade my son’s phone as a birthday present. The Sprint guy asked me if I know the pin code on the account. I said that I didn’t and wouldn’t be asking my son about it cause it would ruined the surprise. Sorry, nothing can be done about it.

Following my rule that every rejection brings me closer to the goal I decided to call to Sprint’s customer service with he same request. The lady asked me about the pin, and when I said that I didn’t know it she decided to help, “Let’s see if you know the answer to his secret question. What’s his favorite hobby?” This was a no brainier, and I said “Music”. Great, the account security was easily broken and asked if my Son would be eligible for an upgrade. Yes, his current Android phone is 2.5 years old so this can be done. But the service representative mentioned that to get an iPhone5 for $199 I’d need to commit to a 2-year contract with Sprint with early cancellation fees of $350. This is a little to high of a penalty, but my son was already a Sprint customer and had no intentions to leave them anyway. Oh yeah, one more thing. Currently he pays $70 for his phone/data plan, but after switching to a smartphone (as if Android was not) it’ll cost him an extra $10 a month. OK, no problem.

The new iPhone5 arrived at my son’s place one day before his birthday and my wife and I received a happy thank you email from him. Late at night, while exiting the Subway in Brooklyn he was mugged by two Mexicans carrying knives. They grabbed my son’s backpack where his was keeping his new iPhone. This sucks. Big time. But the good news is that my son was not hurt physically other than a small scratch on his face.

Part 2. From the new iPhone5 to an old HTC

Calling to the Sprint customer service didn’t help and it’s hard to blame them for not being to do anything to their loyal customer of 10 years. So what’s the next step? Time to get back to an old Android for another two years waiting until the contract expires and buying iPhone 7. And this became the hardest part to do. While switching to iPhone5 took 5 minutes online, to go back to an old phone required the visit to the Sprint store (it was done in Manhattan). After 50 minutes of the manipulations made by a technician the old phone gained back its ability to make calls, but 3G was not comping up, and all the data (including photographs) where gone from the SD memory card. The technician said let my son go home promising that the phone’s data access will be recovered in a couple of hours. It never happened.
My son tried to call the Sprint customer’s service to remove the extra $10 of monthly fees added while upgrading to iPhone didn’t help.

Last week my son can home for a Thanksgiving weekend, and I suggested that we’d go together to the closest Sprint store to resolve two problems at hand:
1. Fixing the 3G data access
2. Reducing the monthly fees bat to $70 a month.

This line in the closest Sprint store was not that long, and after 15 minute wait representative rebooted the Android phone, but then said that there nothing she could do, and that they din’t have sevice technicians any longer, and we need to go to another store 5 miles away. Fine. But to resolve the billing issues, we’d need to go to yet another head-office store 11 miles from us. She suggested that it’s better go there in person that trying to resolve this issue over the phone.

Twenty minute later we’ve enter the head store. After waiting in line for another 20 minutes we were greeted ny a polite guy. Who rebooted the phone, raised his browses that 3G is not there, and explained that there is no way to reduce the monthly pay to $70 a month because all smartphone plans start at $80. The fact that my son “grandfatherd the $70” plan is irrelevant and there is no way to get back. Are you still with me?

Before: an old Android with unlimited data and no contract at $70 a month.
Now: an old Android with 2-year contract (for a stolen iPhone) and $80 a month.

Quite an achievement, isn’t it?

Then we drove to a third store where the technician was supposed to fix the 3G. After 45 minutes in line, the customer service representative rebooted the phone. Strange, the 3G is not there. Checked the account tho make sure that there was no any lock on the data access there. Finally he said, that their technician was gone for today and we’d need to leave the phone for tomorrow. After spending 2.5 hours visiting three stores and getting nowhere, we said, “Enough is enough”. So where were we?

Before: an old Android with unlimited data and no contract at $70 a month
Now: an old Android that can only make phone calls with 2-year contract (for a stolen iPhone) and $80 a month.

The Happy End

The morning after, my son has visited the closest Verizon store where they canceled his Sprint service and gave him a new Iphone5 (shown on the left here).

Just now I called Sprint asking to lower the termination fees given the circumstances did not help.
“Could you do anything for a guy who was your loyal customer for 10 years?”
“No Sir. But he was using our services for 10 years, wasn’t he?”

He was, but not any longer. What did Sprint do wrong? Not much. All of their customer service representatives were nice and polite. But they were incompetent. The problems were not resolved.

The lesson learned: if you believe that your new phone may get stolen or lost, buy an insurance that covers such situations. Go into all nitty-gritty details of the insurance policy and study what steps should you take to prove that your phone gets stolen.

No biggies. Life goes on, but without Sprint. No worry, be happy!

iPhone Verizon vs. AT&T

My son just got an iPhone5 from Verizon. I got an iPhone5 from AT&T, my wife has iPhone4. So I put three phones next to each other and ran the speedtests on each of them at the same time. The results speak for themselves.

I’m sure the results will vary in different locations – I ran this test in Central Jersey – but Verizon wins hands down. I understand that iPhone4 on 3G is slower than iPhone5 on 4G, but the question is if AT&T has 4G for real or they simply display”4G” to make iPhone 5 owners happy?

These test may not be ideal cause for some reason the Speedtest application decided to use different servers for tests. Here’s another interesting observation: while Verizon’s iPhone found the closest symbol in Clifton, NJ, the AT&T test on the photo reads “Hosted by Towerstream”. In test re-run I’ve noticed the message “Using Comcast”. So the question is if AT&T really has their own 4G network or have to borrow the networks from other providers, which is the reason of such slowness?

Anyway, it was an interesting experiment, and I hope it’ll help some people in making decisions while selecting their mobile providers.

How to Make Your Brain Rest

If you’re like me, your brain works hard during the day switching from one activity to another: solving issues, programming, interviewing, attending meetings, dealing with customers. If you had “one of these days”, by 5PM you might hear this permanent buzz in your head. I’ve read somewhere that a typical person thinks about something each and every moment while awake. Your thoughts may be jumping  from one subject to another, but your brain works non stop.

So how to make your brain relax? You need to switch to a different activity that will keep you occupied. Based on my observations, people use workouts, meditation, or booze to clear their minds. 

I’m not into sports, don’t like gyms, and my cycling machine is just sitting in the basement hopelessly waiting for me. I don’t know how to meditate. I don’t consume any alcohol while working.

I found a solution for myself, which may work for you too – I’m listening to audio books. It can’t be any audio book though. The trick is to listen to those books only that keep you focused on listening 100%. My personal discovery is hard-boiled detective stories by Lee Child, specifically the series about Jack Reacher.  

I’m on my third novel now and it works just fine. Not that I knew beforehand  that it’s a good way to relax, but my during my recent visit to Miami my friend Matt told me that he’s hooked on Jack Reacher stories, and I decided to give it a try. But for reading you have to sit or lie down in a quiet place, while listening can be done anywhere – while walking on the street, while driving a car or riding on the bus.

The first story was very interesting, but I was trying to listen to in in my usual multi-tasking mode  while answering emails or browsing the Web. Pretty quickly I realized that it’s simply not possible. Not listening for 30 seconds makes you miss an important detail of the crime or investigation. Isn’t it what my brain needs? It has to be occupied with an activity that won’t allow switching to anything else! 

The good news is that the series on Jack Reacher includes 17 books, and each one is about 14 hours long. The bad news is that this series will end soon, so I’ve started to look for another author that’s as good (for me) as Lee Child.  My old friend Sergey from Israel suggested another author – Harlan Coben. If you know of someone else – please let me know. 

Enough of blogging already. Yesterday I left Jack Reacher handcuffed on the truck with a kidnapped FBI agent. Sorry guys, gotta put my headphones on and cook eggs for breakfast.

JavaScript for Java Developers at Devoxx 2012

Last week I made a presentation “JavaScript for Java Developers” at the conference Devoxx in Belgium. The presentation was well received. My special thanks to Peter Pilgrim who posted a nice feedback in his blog.

Now I’m getting requests for the slides of this presentation, and they are available for download. But I can offer you something better than these slides. We started writing a book for O’Reilly “Enterprise Web Development: From Desktop to Mobile”, and the current raw version (non-edited bits and pieces) of some of its texts is available for free at EnterpriseWebBook.com.

We’ve created a Git repository for all book materials, and started pushing the new content there daily. After each push we run a script that generates the new HTML version for EnterpriseWebBook.com. The Chapter 2 titled “Advanced Introduction to JavaScript” will be completed by the end of this week, and it covers all the materials presented at Devoxx, but in a more detailed fashion.

Your technical feedback is greatly appreciated. Please don’t suggest fixing missing commas – leave it to professional copy editors from O’Reilly. But if you want to praise or criticize the book materials from the technical point of view, feel free to send me emails directly at yakovfain at gmail.com.

Non-Technical Notes From Devoxx 2012

The Java conference Devoxx 2012

It was good. It was really good. It was created by a team who cared. Java developers are not stupid. They see the attitude of the organizers. Devoxx is for real. 195 speakers. 3400 attendees.

During the last couple of months I’ve attended two largest Java conferences: JavaOne made by Oracle and Devoxx made by the team of enthusiasts lead by the fearless leader Stephan Janssen. JavaOne 2012 was better than JavaOne 2010. It was not as good as some of the Sun’s JavaOne conferences, but this year Oracle deserves a credit for delivering a good corporate event promoting one of their products. On the other hand, the Devoxx organizers have the only thing to prepare and promote – it’s Java ecosystem.

With all my respect to Oracle, I have to say that Devoxx became the #1 conference for Java Developers in the world. It’s better. As simple as that. Devoxx already became a brand. There is just Devoxx (3400 attendees), Devoxx France (1200 people), Devoxx Kids, and the next March the Devoxx UK will be launched. If Devoxx wouldn’t start establishing its presence at the kids playground, I’d suggest to add an extra “x” to the end of their brand name just to make the message a little stronger 🙂

The Devoxx conference can afford not selling you anything. It allows Google speakers. I’ve attended several presentations made by Google developers – they were really good. Devoxx is inexpensive (mainly thanks to Oracle and Google).

The venue is great. It’s the second largest in Europe movie theater called Multiplex. The theater itself has a top notch video equipment, but the creativity of the Devoxx team made it even better. Each auditorium (a.k.a theater) has a large monitor by the entrance announcing the next presentation in an animated form.

After attending a presentation people could vote using the NFC boards embedded into their wristbands. The NFC device would send an HTTP Post request to a little board of the Raspberry PI device which ran node.js server that would saves the votes in Mongo DB. This Raspberry PI device costs $35 and runs on Java.

Unfortunately, Java community is losing women. Only 4% of the Devoxx attendees were women. It’s bad, but I don’t see any solution for this. In my opinion, the set of technologies that a modern Java developer has to know is too broad and complex. Most of the working Java women can’t afford the luxury of spending nights on self-studying – they have to take care of kids and their husbands that learn Scala after dinner. I can only beg, “Dear ladies! Please, please learn Java programming. The money is here. Money bring independence… if this is what you want. ”

All presentations were video recorded and will be available on Parleys for subscribers by the end of this year. By the way, this time all the videos will be delivered using HTML5 technologies: the Flash Player is out.

Here’s more of my non overly technical motesfrom Devoxx. Steven Chin has arrived to the keynote stage on his motor bike. He’s been traveling through 12 countries to get here (see http://steveonjava.com/nighthacking/ for the map and his interviews). But I’m pretty sure that the union-lawyer-controlled USA would’t allow the running bike on stage.

I’ve attended several presentations related to Web applications security. This subject will only become more and more important over the years, and I strongly recommend to get educated in this area.

Chrome beta: JavaScript can access directly Microphone and WebCam API. IMO, this is very important development, which should convince some swingers to go HTML5 as opposed to native mobile applications.

During one lunch I met a strong Flex developer I knew. He doesn’t want to throw away five years of his investment in Flex. I tried to convince him that this was not a throwaway – any new technology you learn makes you a stronger and better software developer. We have to learn something new all the time – this is the rule of our game.

IMO, the overall interest to HTML5/JavaScript is a lot higher in Europe than in the US. The fact that a session on JavaScript unit testing fills a 400-seat auditorium speaks for itself. The angular.js talk had people sitting on the steps in the isles. My session “JavaScript for Java Developers” was attended by 300 people. While listening to the questions from the audience at similar presentations at JavaOne in San Francisco, I had a feeling that American Java developers were not overly familiar with what’s going on with HTML5.

At Devoxx, I’ve attended a couple of non-technical presentations too. No, it was not about agile methodology – I’m way too skeptical about this whole Kanban/Scrum movement. These were the presentations about software development in general, and the rooms couldn’t fit all the people who wanted to be there. I’m really interested in observing the lives of enterprise software developers, and have an opinion on this subject. I’ll be submitting proposals to speak on this subject next year.

Finally, about the country, where Devoxx takes place. To put it simply, you can’t go wrong with Belgium. Make it a learning vacation. Antwerp is just a short two-hour train ride from Amsterdam or Paris. The round-trip railway ticket to Gent and Brugge costs less than 30 Euros. Be creative! The Belgium beer variety is second to none, and they have plenty of good restaurants and hotels. Belgians have a good sense of humor too. The hotel I was staying in had a bar. I couldn’t help it and took a picture in the men’s toilet there.

Isn’t it something? At least it’s a very positive way to finish a blog post about a technical conference – don’t you think so?