Profile

Cover photo
Piotr Kochański
5,610 views
AboutPosts

Stream

Piotr Kochański

Shared publicly  - 
 
So, shall we learn LISP or stay away from it, becaus it is to powerful?

http://www.winestockwebdesign.com/Essays/Lisp_Curse.html
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
Why superstar programers hate recruiters? Look at this people [https://gist.github.com/1962484 and authors of stupid comments below] or [https://twitter.com/#!/dhh/status/154336235068993536].

I don't get it. Recruiters are doing their job - they are linking employers with employees. That's sort of useful activity, given high unemployment rates.
Obviously someone might not be interested in a job offer, but why publicly mourn about that?

Sometimes when I walk or drive I come across people who are cleaning sidewalks or streets. Sometimes I have to wait or walk on the lawn or drive slowly but it never came to my mind to be angry. These people are doing their hard and, in fact, very important job, getting salary probably lower than mine.

The superstar programmers are earning much more than average recruiter. They get these money partially because the company they are working for managed to employ right people - maybe thanks to some recruiter’s work.

Some superstar programmers are kind of celebrities. That has advantages and disadvantages: Basecamp is so popular because of the hype connected to 37signals people, (David Heinemeier Hansson, Jason Fried) and Ruby on Rails. So DHH managed to become rich because of the marketing strategy, in which he and his 37signals colleagues played crucial role. They are rich, popular, sell books, many people know about them and want to work with them, use them, etc. Celebrity’s everyday life.

Madonna, Lady Gaga, Jack Nicolson, Dustin Hoffman, Kate Winslet or Nicole Kidman are also getting job offers all the time, but I haven't heard that they are arrogantly complaining about it.

You do not want to receive job offers? That's simple. Remove your Twitter/FB/G+/LinkedIn account or keep it private. Stop blogging. Don't post your e-mail address publicly. Use fake Github account (if you need to use Github at all). You are invited to TED conference - refuse. And so on. Easy.

And think how many people would like to have your problems with recruiters.
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
Bashing Google UI team again. What's going on. Are day so arrogant or so incompetent? Bet for arrogancy.
 
By the way, that Youtube setting panel is, indeed, completely broken:
3 comments on original post
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
The dream of almost all startup founders: be bought by some corporation.
Forks. gist: 1642349 by lfborjas Form letter template for ac... created January 19, 2012; gist: 1644682 by olix0r Form letter template for ac... created January 19, 2012; gist: 1653890 by raganwald Fo...
1
Add a comment...

Piotr Kochański

Shared publicly  - 
2
Add a comment...

Piotr Kochański

Shared publicly  - 
 
I've pointed out some time ago that something wrong is happening to Google. One more example is linked below: total mess when it come to mobile application design.

Every application uses different conventions, not to mention general look&feel.

People like http://www.androiduipatterns.com have a lot of job to do.

Can't Google design something nice and consistent?

Google starts to look like a company run by C coders, who, by pure luck, managed to put together search engine that is very effective (or maybe was very effective, due to SEO experts more and more easily cheating Google algorithms).

Quora, Stackoverflow, etc. socially boost search engines might kill Google in the not so distant future. Bing + Facebook mariage done right could be nail in Google's coffin.
1
Add a comment...
In their circles
16 people

Piotr Kochański

Shared publicly  - 
 
Ahhh, Java.

No doubts Cedric Beust is a smart guy, but playing with Java code for too long marked him heavily. 

There is a class Person with a method livesNear(Person anotherPerson). So, we need to add  somehow distance checking service to class Person. Sounds ugly, but, as Cedric shows, it can be also made weird. Namely we can create some Guice factory class that will produce Person objects, and that distance calculation service injection would be sort of hidden. 

This visually improves situation showing clearly what's wrong with Java.

Personally I would prefer to have a plain function boolean livesNear(Person aPerson, Person anotherPerson) placed in the same module, namespace, whatever you call it, as Person. But we cannot create functions in Java, so we need separate class to keep that function as a method. Annoying. In fact I would even prefer to have generic method, that would act on any object having localization info (address, GPS data, whatever).

Java is a simple language and in this situation we have two options.

(1) Go with the object orientation spirit and insert into Person class whatever seems to belong there (like that localization service).

(2) Give up, create some "util" or "manager" class that would act as a placeholder for methods that does not fit well into given class (give up, since we sort of abandon object orientation).

There is also a number of variants, but usually they mean overengineering. I count Cedric's approach as one of them: we don't like that constructor clutter, so we create artifacts to hide it. 

But, in Java tradition, we can come up with something much more strange, like creating interface Localizable with method isNear that would be extended by a class SpatiallyLocalizable with needed implementation. Person would extend that class to have ready-to-use method. Ufff.

Because there is no simple multiple inheritance in Java that's a little bit cumbersome, since it may appear that Person has to extend one more class - what to do then?

The fun part is that all this discussions and Cedric's considerations are unique to Java. In JavaScript or Clojure (or any other LISP) or Python or Objective C or Ruby this is a non-issue. Language is enough powerfull to handle nicely such situation.
The more I use dependency injection (DI) in my code, the more it alters the way I see both my design and implementation. Injection is so convenient and powerful that you end up wanting to make sure yo...
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
I like charts. What the message "Apple sold more iphones than Macs ever" really tells?

First, imposed interpretation: iPhone is selling so great
Second interpretation: Macs sells are and were rather miserable...

Beware of statistics!
1
Marcin Bobowicz's profile photo
 
second thought more probable
Add a comment...

Piotr Kochański

Shared publicly  - 
 
So the Basecamp people decided to rewrite Basecamp from scratch [http://www.inc.com/magazine/201202/jason-fried/starting-over-get-real.html].

Rewriting is bad idea in itself [http://www.joelonsoftware.com/articles/fog0000000069.html, http://gigamonkeys.wordpress.com/2009/09/28/a-tale-of-two-rewrites/], so why 37Signals are doing it? I am not convinced by "official" reasons.

Maybe this has something to do with Ruby on Rails. Ruby + Rails is a magic technology. The problem is that even the greatest magician forgets his tricks after some time. Not to mention apprentice magician, who has to make sens in magic code written by some else. The ability to make on thing in 55 different ways in Ruby/Rails does not help to keep code readable. That ugly Java shines here.

Another thing is Ruby approach to backward compatibility (both in language itself and various libraries). I had a real "fun" playing with 3 versions of CanCan. And after every version upgrade everything stopped working (they were simply deleting methods, deprecation seems to be unknown beast in Ruby land).

Will Basecamp people survive the rewrite? Sure they will. Why? Because Basecamp is a rather simple piece of code, so they can play as they want. That's why there are so many Basecamp clones, btw. But it's hard to "become trendy", as one day Basecamp did, so Basecamp is still ahead.
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
That's a sad, but eye opening article about reasons why companies are moving their bussiness to China.

The problem is that workforce costs are not the most important factor, but flexibility of Chinese companies, availability of well educated engineers, rough products and natural resources.

For years US and European companies were moving to China jobs, which were consider "simple", "cheap", "unimportant", later, they started to move there more and more advanced technologies. Chinese people used the opportunity to educate themselves and be able to replace workers from US and Europe.

Capital do not know what is patriotism and move to the place where it can effectivly multiply itself. Corporations the same - they just go where the low cost and high income can be found.

The article mentions US, but the same concerns Europe and, yes, jobs of people like me (software engineers) and the whole IT ecosystem workers are in danger.

Are we ready to work for fraction of today's incomes? Are we ready to come back to working on Saturdays?

Can we afford any longer to give 80% of our income to the countries administration, European Union beaurocrats in the form of taxes (income, VAT) and social security payments for pensions (that we might never get anyway)?

The World is changing rapidly, are we going to perish or to adapt well? Do we have enough energy, vivacity to be able to adapt at all or we are simply to lazy and coddled?

Note: unfortunately the article lacks more indepth analysis of US job market (many information are taken clearly from Apple P.R. department). Also the importance of the fact that Chinese workers are often treated more like slaves then workers is a little bit hidden - this is NYT after all. The comments under article point out its flaws. Nevertheless reality is reality.
Building Apple’s iPhone in the United States would demand much more than hiring Americans — it would require transforming the national and global economies.
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
Can't say it better...
Normally I just ignore navel-gazing tech-industry articles like this, but people keep sending it to me, so I guess this guy is famous or something. Michael Arrington posted this article, "Startups Are...
1
Add a comment...

Piotr Kochański

Shared publicly  - 
 
Great stuff, great ideas. Details really matters. Pity that many people ignore that.

True proffesionalism is about paying attention to the details, even though nobody (including client) would never notice them.

That's why Toyota Yaris produced in Japan can be driven for 400 000 km without serious repairs while the same mode produced in Great Britain starts to break down after 200 000 km.
Your daily dose of UI inspiration
1
Add a comment...
People
In their circles
16 people
Basic Information
Gender
Decline to State