Log in

Dennis Gorelik
25 June 2017 @ 05:03 pm
Santhosh claims in his resume that he is a Web deveper.
Interview showed that he is probably a web or graphic designer. But not a developer.
He mentioned Javascript, but when I started to talk with him about specific task that could be implemented in Javascript - he quickly gave up.
All people on his team have "Senior System Analyst" title, but from my understanding, Santhosh is a junior at his role.
When describing the accomplishments, Santhosh used word "we". Sometimes "we" meant him, and sometimes "we" meant his team.
Skype audio connection was good (which is not typical for Skype calls to India). That is probably because Santhosh worked (on the bench) from his employer office.
2000 rupees per day ($30/day = ~$700/month).

Unfortunately nothing of what Santhosh can do a meaningful contribution to PostJobFree: we need mostly backend work (middle-tier, parser, SQL queries and database design) or solid UX. Santhosh did not show signs of either of that knowledge.
So I told Santhosh that his skills do not match what I am looking for and asked him if he has any questions for me.
He did not have any questions.
Few minutes later he messaged me:
Santhosh: Hi is any possibility to give one task related to Ui Ux Design and see if I didn't complete we can drop for further or else we will continue as well
Ui Ux/Front-end Development
Dennis: I do not have tasks suitable for your skills
This was a 27 minutes interview.
I should learn to recognize such mismatches much faster.

Originally posted at: http://dennisgorelik.dreamwidth.org/135474.html
Dennis Gorelik
25 June 2017 @ 04:38 pm
Couple of days ago I interviewed Volodimir from Ukraine.
Volodymyr promised to work 6 days per week 14 hour per day for about $1500/mo.
His expertise is in writing "data processing" code.

I asked Volodymyr to give me examples of input and output of his processes.
Volodimir said that the input could be anything.
I asked him to be more specific, so I could understand.
Volodimir kept insisting that it could be any data.
I asked what kind of business problem does that process solve.
Volodimir kept insisting that it does not matter.
Eventually we both gave up in frustration.
I wrote to Volodymyr "your skills probably would not work out for working with me -- I simply would not be able to communicate with you clearly".
Volodymyr replied:
This is a content of one column of one row of more than 1000000 rows which I use as input data : "2025050201401014016060 6090305025050201401014016060609030507014010901303016014".
If this is interested for You - try to understand what is this.
Your knowleges in programming is so low.
At first, You need to understand what is a main tasks of programming.
At second, You need to choose a tasks which You will solve and decide for why You need it.
You absolutely not understanding bases of programming.
When You will have enough skills in programming You will stop ask "an examples of data you are working".
I think - speaking skills of Russian, English or other languages for speaking about nothing - is just spent time. 
I`m usually very busy. 
And don`t want spent time.All Your conclusions is - big mistake.
I don`t want spent time for nothing.

Originally posted at: http://dennisgorelik.dreamwidth.org/135260.html
Dennis Gorelik
ElasticSearch team defends the bloat in ElasticSearch Percolator 5.4
If you're not interested in ranking you can easily turn it off, by wrapping the percolate query in a constant_score query.
The percolator tries to tag the queries automatically based on the containing query terms. However it can't do this for all percolator queries, because the percolator doesn't know how to extract meaningful information during indexing for all queries. This is a work in progress and will get better over time. It already has shown a significant performance improvement for cases where the percolator was able to analyze the percolator query correctly at index time.

1) Funny how in order to turn off unneeded feature, application developers have to create an extra wrapper around their query.

2) "work in progress" did not stop ElasticSearch team from breaking backward compatibility and forcing their users to rewrite their legacy code in favor of "work in progress" ElasticSearch 5.4.

3) "a significant performance improvement" is not quantified, and the cases where that improvement happened -
not described.

See also: ElasticSearch Percolator Bloat - part 1

Originally posted at: http://dennisgorelik.dreamwidth.org/135111.html
Dennis Gorelik
Кирша Данилов вышел на работу на Демидовских заводах:

Подписывайтесь и следите за новостями. Должно быть интересно.

Originally posted at: http://dennisgorelik.dreamwidth.org/134880.html
Dennis Gorelik
16 June 2017 @ 08:15 pm
I think these sanctions would end up being mostly symbolic and would have no real effect. Which is exactly how it should be, considering that some limited lobbying of US elections by other countries is a good thing (it keeps countries together).

The overwhelmingly bipartisan vote of 97-2 sent a message to Vladimir Putin that lawmakers on both sides of the aisle are serious about punishing Russia for its actions last year -- and sent a message to Trump that they're serious about ensuring that those sanctions stay in place until Congress is ready to lift them.

German Chancellor Angela Merkel's spokesman ... said it was "strange" that sanctions intended to punish Russia for alleged interference in the U.S. elections could also trigger penalties against European companies.

Originally posted at: http://dennisgorelik.dreamwidth.org/134421.html
Dennis Gorelik
16 June 2017 @ 03:17 pm
Early ElasticSearch History
Back in 2010 Shay Banon created first version of ElasticSearch.
Over the years the product matured.
In November 2012, ElasticSearch team received $10M in Series A funding.
Then in February 2013 they received $24M in Series B funding.
That helped them to produce very robust ElasticSearch 1.0 (2014-02-12) and then ElasticSearch 1.6 (2015-06-09) that we currently use.

$70M bloat
June 2014 - $70M Series C funding.
Shay Banon became a CEO and excused himself from active involvement in development and communicating with customers.
That is where the bloat began.
It looks like ElasticSearch team decided that since they have so much money - they can do pretty much whatever they want.
So they broke backward compatibility of their percolator by squeezing percolator into the standard format of ElasticSearch index.

What is percolator?
ElasticSearch percolator does reverse operation to a standard ElasticSearch query.
Standard ElasticSearch query allows our job seekers to find matching jobs.
Percolator allows job seekers to use their job search query in order to create a job alert.
Then when, in the future, new job is posted (by somebody else) -- the percolator is able to find all job alerts that job seekers created. That allows us to notify all owners of these matching alerts about new matching job (within a minute of receiving a job).

Differences between standard search query and percolator query
Because of the reverse nature of percolator, it functions very different from a standard search query:
1) Standard search query should normally produce only 10 results (users is unlikely to read more) and support paging.
Percolator always wants to get all matching alerts (also known as "percolator queries") - not just 10 of them, because every job seeker wants to get notified about new matching jobs to their favorite job alert.
2) Standard search - ranks search results based on the quality of the match (and then order results by descending rank). Such ranking does NOT make sense for percolator (because every job seeker wants to get notified anyway).

Why use standard search index format for percolator?
So why had ElasticSearch team decided to break backward compatibility and merge Percolator into a standard search index format?
This is their excuse:
Prior to 5.0, all percolator queries need to be executed on this in-memory index in order to verify whether the query matches. So the idea is that the less queries that need to be verified by the in-memory index the faster the percolator executes.
In my first reading of that ambiguous claim I thought that ElasticSearch would be able to automatically detect what percolator queries is ok to skip, so it would, effectively, improve percolator performance.

What actually happened
We spend few days to setup proper experiment and found out that ElasticSearch 5.4 percolator is 3 times slower than ElasticSearch 1.6 percolator (or in other words, ElasticSearch percolator performance degrades proportionally to the version number).

The correct interpretation of that "less queries that need to be verified" claim actually meant that application developer in ElasticSearch 5.4 has an option to tag percolator queries (alerts), and then write code that would help percolator to skip alerts that have no chance to being triggered by a document we percolate.
But the problem is that it is very hard to come up with such "alerts skipping" algorithm. Percolator is so valuable in the first place exactly because of that ability to determine what alerts match and what alerts do not!

The summary
Series C $70M funding encouraged ElasticSearch team to break backward compatibility and produce useless features (such as paging and ranking in percolator) + degrade performance 3x.

Next: ElasticSearch Percolator Bloat - the Defense

Originally posted at: http://dennisgorelik.dreamwidth.org/134301.html
Dennis Gorelik
13 June 2017 @ 09:15 pm
Today I learned that Spark programming language has nothing to do with Apache Spark.

That "Spark Language vs Apache Spark" confusion is even worse than "Java vs Javascript" confusion.

Originally posted at: http://dennisgorelik.dreamwidth.org/133985.html
Dennis Gorelik
Alex St.John shares his business war story from Microsoft's past:
I worked for the team at Microsoft that was responsible for “positioning” Microsoft strategically against competitive threats in the market called DRG (Developer Relations Group). Intel had requested that Microsoft send a “representative” to speak at their launch event for 3DR.
As DRG’s resident graphics and 3D expert I was sent on Microsoft’s behalf with the specific mission of evaluating the threat that Intel’s new initiative represented to Microsoft and formulating an effective counter-strategy.
My assessment was that Intel was indeed attempting to virtualize Windows by software emulating all possible competitive external processing.
I wrote a proposal called “Taking Fun Seriously” that suggested that the way to prevent Intel from making Windows “dispensable” was to create a competitive consumer marketplace for new hardware capabilities. The idea was to create a new suite of Windows drivers that enabled massive competition in the hardware market to enable new audio, input, video, networking and other media capabilities that would all depend on proprietary Windows drivers to work across a new market we would create for PC based video games. Intel would not be able to keep up with the free market competition we created among consumer hardware companies and therefore never be able to create a CPU that could effectively virtualize all of the functionality consumers demanded.
Thus DirectX was born.
... our “evil scheme” was wildly successful. Microsoft realized that the way to dominate the consumer market and keep Intel at bay was by focusing on video games and dozens of 3D video chip makers were born.

Though I suspect that if Microsoft just supported OpenGL and other platforms - that should have been enough to "keep Intel at bay".

Alex St.John continues:
This brings us to today, 2017, the year GPU’s finally begin to permanently displace the venerated x86 based CPU. Why now and why GPU’s? The secret to the x86 hegemony has been Windows and backwards compatibility of the x86 instruction set all the way to the 1970’s. Intel has been able to maintain and grow it’s enterprise Monopoly because the cost of porting applications to any other CPU instruction set with no market share is prohibitive. The phenomenal body of functionality enabled by the Windows OS and tied to the x86 platform has further entrenched Intel’s market position.
The beginning of the end for Intel began when Microsoft AND Intel both failed to make the leap to also dominating the emerging mobile computing market.
Why did Microsoft and Intel fail to make the leap? There are a lot of interesting reasons but for the purpose of this article the one I would like to highlight is the baggage of X86 backwards compatibility. For the first time power efficiency became more important to the success of a CPU than speed. All of the transistors and all of the millions of lines of x86 code that Intel and Microsoft had invested in the PC became an obstacle to power efficiency. The most important aspect of Microsoft and Intel’s market hegemony became a liability over night.


What do you think - would NVidia's GPU actually replace Intel's CPU?

Originally posted at: http://dennisgorelik.dreamwidth.org/133830.html
Dennis Gorelik
There are a number of reasons why moving to Cambodia will shave about twenty years off your life.
Expats like to ride motorbikes, often helmetless, presumably because they think it makes them look cool. This can be rather dangerous in a country with reckless local drivers, no enforcement of traffic laws, and poor emergency medical care. Private ambulances in Cambodia will actually refuse to take patients who are seriously injured, because they don’t want to risk transporting a dying patient who won’t be able to pay the hospital bill.
While children may be coddled and overprotected in Western societies, they are simply left to their Darwinian fate in Cambodia.
If your daughter develops acute appendicitis in Cambodia . . . well, she’s probably screwed. Just start over with a new kid.
Cambodia smells really bad. If you’re thinking of moving to Phnom Penh, you need to know that the entire city stinks of garbage, smoke, urine, and rotten fish.
your lack of retirement planning will be the least of your concerns when you’re lying on your deathbed in a dirty Cambodian hospital at age 57.
I know what you’re thinking now. “I’ll just move to Cambodia for a few years, then I’ll move back home and get a good job that pays well.” Not a chance. The job market is extremely competitive these days in most Western countries. Cambodia still has a notorious reputation, and it’s hard to get a good job when the hiring manager who reviews your application says, “This candidate has a fascinating resumé. I wonder if he’s a pedophile.”
Because Cambodia only attracts certain types of expats, you will end up making friends in bars with the kind of undesirable people that you would never associate with back home. Junkies. Whoremongers. Journalists.
the unstated agreement in these relationships is that the Western man is supposed to improve the poor girl’s standard of living. The impoverished Thai woman reluctantly allows the older Western man’s unsightly, wrinkled penis to enter her vagina from time to time. In exchange, the Western man moves the Thai woman to a proper Western country, or he builds her an oversized house in her home province that is the envy of all her slutty, gold-digging friends. Then she waits comfortably for him to die. That’s the deal that your Thai wife or girlfriend signed up for.
Moving a Thai woman to Cambodia does not improve her standard of living. It’s a shocking downgrade.

Judging by the number of comments, this is the most popular Gavinmac article.

The reasons why NOT to do something seem to be more popular that the reasons why DO something.

Originally posted at: http://dennisgorelik.dreamwidth.org/133416.html
Dennis Gorelik
Couple of days ago a scam team, in order to sign up for premium membership on postjobfree.com -- hacked couple of real business emails: jdicken@c21patt.com and heidi@heidiburns.com
Both emails seems to belong to real estate agents.

I was able to find and reach actual owners of these email addresses on the phone.
They do not seem to be very concerned about their email addresses being compromised.
Both email owners confirmed that they did not make premium orders on our web site and then indicated that they prefer to continue with their other business instead of digging deeper into that email hacking ...

How much would you care if you learned that your email account was hacked?

Originally posted at: http://dennisgorelik.dreamwidth.org/133205.html