From the Trenches of the Enterprise Software

Yakov Fain

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


Latest Articles from Yakov Fain
In this blog I’ll show you how to guard routes in Angular 2 Router (currently at 3.0.0-beta.2). Let’s consider some scenarios that require a certain validation to be performed to decide if the user (or a program) is allowed to navigate to or leave the route: Allowed to open the route...
Lots of things are happening there. As of today it’s the liveliest software ecosystem. The last time I’ve seen such an interesting gathering was 15 years ago in Java. Fifteen years ago Java developers were looking down on the JavaScript folks. It was assumed that JavaScript was only ...
I was writing a small app in Angular 2 in TypeScript with the on-the-fly transpiling by SystemJS. I needed to implement a router that would switch between the Home and ProductDetail views in a single page app. The root component had two links and was supposed to render either Hom...
This article was excerpted from the book “Angular Development With TypeScript.” The Angular 2 framework is a re-write of popular framework AngularJS. In short, the newer version has the following advantages over AngularJS. The code is simpler to write and read It performs better th...
JavaScript is the language of the Web. There is no other language that can run literally on any old or new device connected to the Internet. On the other hand, there are dozens of languages that compile (a.k.a. transpile) to JavaScript. Why not just writing JavaScript applications in J...
In June I was presenting at the ThingsExpo conference  at the Javits Center in New York City. During my talk I was demonstrating how to integrate consumer devices into a business workflow. In particular, I was doing live measuring of my own blood pressure to show how to integrate consu...
Ten years from now software developers will commute to work only if they’re invited to a corporate party or they have to work for an old fashioned client. Software professionals (not the average 9-to-5 workers) will have a freedom to equip home office to their taste. In our compa...
I know, some people will say it’s apples to oranges. Some people will say Adobe is also pushing for HTML5. But I’m writing this for people who read the title of this blog correctly: Flex or JavaScript. Disclaimer 1. I do both. Disclaimer 2. I don’t care about game programming. I work f...
I’ve been using Firefox on my Mac as my default system browser for years until I got really irritated with the need to kill it once in a while after it became non-responsive. Switched to Google Chrome, but was still running Firefox for testing of my HTML/JavaScript code with the ...
In our company it became a tradition to run an annual symposium on software development in New York City. This is a technical event with zero marketing, where our engineers are given an opportunity to share their experience gained while develping real-world applications. 
About six years ago I wrote a blog titled “I have no idea what  Web 2.0 means“.  That blog had link to a video where IT leaders were helplessly trying to explain what Web 2.0 means. One guy said something like this, “Everyone wants to do it, and you can’t find e...
Clear Data Builder for Ext JS (CDBExt) is an open source tool that automatically builds Ext JS/Java EE CRUD applications given one or more annotated Java interfaces. The generated JavaScript and Java code enforce best Ext JS and Java EE practices and is deployed on the development vers...
When I post a job opening for a Senior Java Developer, people send me resumes, and their titles match my post title. But the meaning of the word “senior” varies depending on the geography. Here in the USA a 22-24y.o. person graduates from college and starts as an intern or ...
If you are planning to do build a career as a software developer, you have to be prepared to get trained and re-trained every couple of years. But how? If you’re lucky, your employer will send you to classes, otherwise you have to spend substantial amount of time self-studying. Back in...
Not that I don’t like social networks, but I see no use for them in my personal life. I use Twitter for business reasons mainly, like advertising my upcoming training “JavaScript for Java Developers“, which doesn’t prevent me from posting a photo of two salmon h...
Design patterns were not born equal. Some of them are boring, while others are special. Do you remember your feelings after learning what the Data Transfer Object is? Don’t remember? Of course – cause you didn’t have any special feelings about it other than “It&...
Google performs serious processing of their log files to create their picture of the world, and they have a lot of more brain and computer power than I do. But hey, don’t you want to play a statistician too? It’s better than killing time with Sudoku or Bud Light, isn’t it?
There are many ways of creating Web applications and creating them for the enterprises is not the same as developing a Web site for a pizzeria in your neighborhood. During the last five years we’ve been using mainly Adobe Flex for development of the front end of Web applications. Flex ...
This morning ZD Net published an article stating the Adobe will cease development of Flash Player on Mobile in favor of packaging mobile applications in Adobe AIR. The Flash Player haters quickly picked up this news and to draw attention to their blogs/tabloids started to cash on St...
Back in the seventies, I’d been taking entry exams to the Kiev Politechnic Institute (KPI). I lived in the Ukraine, which was a part of the Soviet Union. At that time people of Jewish descent had a really hard time getting into most of the colleges and universities. Typically, there ...
Adobe offers Customer Experience Enterprise Platform that includes Flash, Flex, HTML, PDF, designer’s tools, workflow servers, data services, tools for all major mobile platforms, marketing campaigns in social networks, usage analytics, friendly content management system. Adobe becomes...
Adobe is about to release Flex 4.5 and Flash Builder 4.5 – both are sharpened for the mobile development. On May 3rd you’ll get the version supporting Android, and the June’s release will support iOS. In other words, developers will be able to create standalone AIR applications for A...
During the MAX 2010 conference, it was clear that Adobe was shifting its focus from Flash Player to HTML producing tools. At that conference, the announcement about the acquisition of Day Software was made without much fanfare. Oh well, it’s just another Content Management System (CMS)...
Back in the nineties, I was helping Russian immigrants living in the greater New York area to acquire the right skills and become software developers. Majority of the immigrants had Bachelor or Masters degrees in disciplines not related to IT. But high motivation to get an interesting ...
There are many ways to have various software components to communicate in Java EE enterprise architecture.  The same is applicable for integrating rich Internet Applications written in Adobe Flex and Java EE systems. Let’s consider the following scenario: An application A...
Apache Software Foundation left the JCP Executive Committee. This step caused turmoil in the Java community. Java developers started take sides.  How do you take sides these days? You twit, you blog, you facebook. Some die hard folks sent emails. Why won’t I take a side too...
During the last six months I had a pet project for Wiley Publishing. I’ve been writing a new Java tutorial. It’ll teach Java programming in a little bit different style than traditional Java books. But let me tell you what’s the title of the book: "Java Programmi...
After all these rumors on Microsoft buying Adobe, several people asked me what do I think of it, and, of course the second question was (it’s always on the mind of every professional software developer), “What to learn next?”
To minimize the invocation time, final methods are optimized (inlined) first by Java compiler and then, during runtime by Just-In-Time (JIT) compiler. Because of this, making methods final is considered a best practice for optimizing performance. If you create classes that may be use...
I’m finishing the third(!) week of teaching Flex. The first half of June I’ll spend doing some regular consulting work, and then another two weeks of corporate training. The use of Flex technologies is picking up in the corporate world, but hiring managers are clearly facing challenge...
There are three main types of testing of any application: Unit testing, where you test small pieces of functionality; Functional and user-acceptance testing where developers, QA engineers and the end user can ensure that the application does what it’s expected to do; and Load (or stres...
1.    Last year, the Princeton Java Users Group  that I’m leading became homeless. We lost the host that was giving us a place to meet and pizza. 2.    Last year, New Jersey Flex Users group ceased to exist – not sure why.  The Gar...
When a new version of a software is released, the old version lives for a while and its creators usually care about supporting it. Yesterday, after reading about the release of Cairngorm 3, it’s clear that Adobe Consulting ignores this rule. Why did they quietly burried Cairngorm 2?
Today, Adobe has announced three software releases: Flash Builder 4, ColdFusion Builder, and Social service. That's right, after about two years of development Adobe has finally released Flash Builder 4 (a successor of Flex Builder 3). Why it took Adobe so long to release it? An exp...
Development of enterprise Flex/Java rich Internet applications benefits from using automated data integration solutions and productivity tools. Currently Adobe offers LiveCycle Data Services ES2 (LCDS) and open source BlazeDS 3. While LCDS is certainly a great piece of software f...
Next week we are running a training class in Belgium, and I went to a nearby Staples store here in New Jersey to order printing of multiple copies of handouts for the students.  This was supposed to be a quick and routine task. A 20-year old girl took my flash drive and opened t...
Here's yet another well written blog by Rachel Luxemburg that looks like a petition to Steve Jobs. So? Such write-ups won't have any effect on Apple's decision about Flash Player. It's a cold blooded decision, and if the real reason for not letting FP on iPhone OS is to keep con...
Yesterday, I finished my dinner in a French restaurant with traditional crème brulee. This time I’ve also ordered a small glass of Sauternes wine. Then we went to our friend’s house to follow it with some good old port. But no matter what software developers drink or eat in Februa...
I’m proud to consider myself an upper middle class American . Why am I so proud about it? Because I haven’t been born in an upper middle class American family. I came to the USA 18 years ago with $200 in my pocket on a visitor’s visa. Don’t rush reporting on me to the Immigration autho...
A month ago I wrote a blog titled “The RoadMap for Adobe LCDS 3”. I was so naïve suggesting cutting the prices for LCDS licenses...