Welcome!

From the Trenches of the Enterprise Software

Yakov Fain

Subscribe to Yakov Fain: eMailAlertsEmail Alerts
Get Yakov Fain via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Latest Blogs from Yakov Fain
First, there was no GMail.  There were Yahoo!, hotmail, aol, and other OK email services.  At work, we were forced to use Microsoft Outlook. I happened to select Yahoo!. It had simple to use interface and it worked. Then Google created an exemplary GMail single-page Web client plus sma...
I’m sure you like the music by Leonard Cohen. One of his hit-songs  has the words “First we take Manhattan, then we take Berlin“. The Russian authorities sing it differently: “First we take Crimea, then the Internet”. Yesterday, Russian authorities started...
I spend a large portion of my time preparing courseware materials, writing books and technical documentation. These documents include hyperlinks, and some of them can be a 100+ character long. Do you include the long URLs in your docs? The immediate answer is to use one of the services...
Recently I decided to stop running my traditional online trainings Intro to Java and focus on offering more advanced training programs. Over the years I had lots of Java training materials and decided to record and publish 18 video lessons covering Intro to Java and Java EE. I started ...
In June a large expo and a conference Cloud Computing comes back Javits Center in Manhattan. This year it includes a new track Internet of Things, which promises to be “The Next Big Thing”. In our company we have enough of early adopters of anything related to software deve...
After the Berlin Wall collapsed, the world population started to see Russians up close and personal. The world got to learn that Russians are not always walking with balalaika and vodka while being chained to a bear. European cities are filled with Russian-speaking tourists. They look ...
I enjoy the process of developing software, which includes many various activities. But learning and teaching new software are the two activities I enjoy the most. During my 30-year career I’ve been working as an independent contractor, taught countless training classes, prepared...
I like Groupons. I really do. Groupon already saved me lots of money.It introduced me to lots of new places. It can bring a real value to me, the consumer. Groupon does it perfectly when there is a match between what I need and what’s offered. This happened to me twice so far, an...
After years of running traditional in-classroom and online trainings “Intro to Java and Java EE” I decided to try something different: I’ll record training videos and will be publishing them once a week for free. These lessons will have references to my powerpoints, a...
Recently a bunch of workers from our company went to a restaurant. One of our guys asked if he could bring a friend who was in town. Sure, why not. The dinner went well, we were talking about various things from the quality of honey pepper vodka to what dependency injection brings (doe...
Recently I made a presentation at the CTO School in Manhattan about running a virtual company, where people work remotely from different countries. Actually, I’m a co-founder of two startups (consulting and product) where majority of the people working remotely. The slides of thi...
We’ve just started to work on the curriculum of the new online training titled “Modern Web Development for Java Programmers”. This course will be taught by practitioners from our company, Farata Systems.  The initial desription is here: https://github.com/yfain/WebDev...
During the last year I’ve been using Sublime Text editor for all of my new text-writing activities. During the last year I’ve been actively using the version control system Git for our O’Reilly book project. During the last I’ve been using GitHub hosting for my ...
Yesterday I decided to purchase some audio books in Russian language. Buying paper books is a nuicance, and what can be easier that downloading an mp3 file right after you pay for it? Ozon.ru is the #1 Russian e-Commerce  portal (they call themselves “Online Megamarket #1″)...
We had a project kickoff meeting this morning to discuss tools to be used. This is a consumer-facing single-page Web  application (SPA) that will also have a back-office part to be used by the business owners. During this meetin our engineers suggested a list of software. This list wil...
Every time I start teaching my new Java class I’m looking at the Swing units in the manual asking myself, “Why my students need to know Swing framework?” Well, I need to teach them how to program GUI, event listeners, asynchronous worker threads and event loop that ar...
In October of 2013 My colleague Victor Gamov and I ran a presentation “Intro to working with GIT and GitHub” for the Princeton Java Users Group. Then we’ve received a number of requests asking if a recording of this session was availabled. We didn’t record this ...
Some people believe that only good math students can become computer programmers. Nothing can be farther from the truth. To be a successful programmer, a person needs two talents: Logic Analytical Thinking Logic is needed because the majority of programming in the enterprise world is a...
I like Twitter. It’s a telegraph of the 21st Century. It’s quick, messages are short and up to the point. But I’m trying to keep short the list of accounts I follow. As of today I’m following 52 accounts, and this is a reasonable number. I mean, I am actually re...
I’m sure every person who is involved with development of commercial Web application knows about this huge failure – release of the healthcare.gov. I’ve been following this story too, because it’s about the software development – my bread and butter. I don...
I’m a subscriber of Audible, an Amazon company, where you pay monthly fee in exchange for a pleasant purchasing experience of audio books. I like listening to the audio books while on the go or lying in bed. My smartphone is always by my side, and Audible created a free applicati...
When I started to learn the soon-to-be-released programming language Dart, it was a love from first sight. I like Java, and Dart is like Java, but a little better. I’m planning to write a series of blogs about Dart, but I couldn’t resist writing about the missing protected ...
Google gets creative. Apparently some Android devices may have nontraditional sexual orientation. They started selling T-Shirts where two happy male or female Androids are holding each other’s hand while waving the rainbow flag. The next logical step is to clearly mark the sexual...
Everyone knows what fishing means. It’s when a man tries to convince a fish that this fat warm had nothing better to do but diving ten feet into the river. Phishing is somewhat similar. Someone assumes that you are as stupid as an average fish and believe that every incoming emai...
My son Dave showed me the episode from the South Park, season 14, titled “You have 0 friends“. This episode is very smart, and it resonates with my understanding of the virtual world, hence this blog. 1. People who are using Facebook daily are either already retarded or are...
During JCrete conference, every session was recorded onto a small audio recorder that was standing in the middle of the room. Obviously, you can’t expect good sound quality when people are making all kinds of noises. Such recorders require a decent amount of post processing, whic...
The fourth day started with the session “Scaling up teams. Motivating people to learn new languages”. It was a discussion about why not too many developers are willing to learn new programming languages. We were talking about two real-world situations: 1. The team lead give...
In the morning of the third day I was running a session about developing HTML5 applications. The main discussion started while discussing pros and cons of developing HTML5 vs native applications for the mobile devices. IMO going native is right if you can afford it. This recommendation...
The second day of the JCrete unconference started as usual – after the breakfast we’ve entered the main room, where Heinz and Dmitry made announcements about four tracks of having the afternoon fun. I picked visiting of a “secret beach”. Then people expressed th...
The conference takes place in the resort hotel. Even though there are only 60 of us, this unconference can have up to four tracks. This is how the main auditorium looked at 8:45AM. We sat down, the conference organizers explained the rules and gave each of us markers and a pack of yell...
The flight from Athens to Chania took less than an hour. Renting the car was quick too. The Hertz guy delivered the car and left it with the A/C on.  BTW, I usually drive cars  with stick shift when in Europe.  Then I took the driver’s seat, put the car in the first gear doing [&...
Tomorrow I’ll be joining about 60 other Java folks and 20 members of their families in Crete – the largest island in Greece. This is the third annual Java unconference that takes place here. If someone is not sure why savvy Java developers STILL go to conferences I’ll...
Three weeks ago my MacBook Pro started behaving weird. All of a sudden its LCD screen would turned off. After that, simple rebooting would never work from the first attempt, and sometimes it wouldn’t work at all unless it sat still for several hours. This reminded me of my first ...
Developing applications in JavaScript is not overly productive. You can use CoffeeScript or TypeScript to write code that will be converted into JavaScript for deployment. We are also closely watching the progress with Google’s new programming language called Dart. It’s a c...
When I saw the sign that in case of fire you should leave the building before tweeting about it, I smiled. But this is sad. I’m pretty sure that at least in the New York City most of the people in case of fire will either tweet or text about it. Slowly but surely the […]
I was making a presentation to our client on mobile development. It’s a strong Flex-Java IT shop, and our company helps them with Flex development. I was comparing pros and cons of native vs html5. Spoke about the hybrids too. During the Q & A session one person asked me if I...
Just got an email that the eBook “How to Create the Next Facebook” is on sale: $10 instead of $20.99. This raises lots of questions in my mind about the readers of this manuscript. If a reader a cheap bastard who couldn’t afford to pay the full price, what are your ch...
In one of my blogs a person asked me, “Can you teach a person to be a programmer within 6 months?”  I answered, “I can make a programmer out of any person within two weeks, but there is a chance that he’ll be asking questions like this: http://m.hotpot.hk/story....
After opening enrollment to online training classes I noticed that 85% of the students  who register have email accounts @gmail.com. Does Google become the main world post office for everyone or only for IT people? It’s scary to know that that there is a single company that can r...
The goal of this blog is to test advanced features of Google search. Let’s see if your really use Google to its fullest. I’ll be running various queries using special syntax, and we’ll see how many results Google comes up with. We need to pick a combination of words t...