6 days in Beijing (part 3)

Rat race

As one CouchSurfer put it: “I don’t think there is many happy people in China. It is very hard to follow one’s dream, only a few people can afford it. Most people know only hard work.” I’ve met some students, both in Haiyang and Beijing, and they told me that during their studies they don’t have time for their hobbies. Basically they don’t have free time. The competition is so hard, and rules often discriminating, that it is easy to be left behind. Therefore everyone studies very hard to have a good, well paid job, so he can afford to pay for education for his child. It is very common for a man to work long hours overtime so that he can support his family.

When someone “foreign” (from different town) enters university, he or she has to have better grades than the local students or he will be drop out from school. That’s quite discriminating.

[Read more here]

Housing

Town people are not allowed to own house or land. Every house in cities is owned by government and people have to rent it. If they want to “own” the house, they can do it by pre-paying the rent for a maximum of 70 years. After 70 years the property belongs to government again. On the other hand village people can own a land or a house, but no one wants to live there because rural areas are very poor. [Read more here]

Generally life in China is much harder than in Europe. And don’t mean that just because of the competition and pressure, but also because of the omnipresent checkpoints. There are even checkpoints (you can call it guarded entrance) in front of some housings so that only residents can enter. Supposedly for the security of the inhabitants.

Toilets

Expect the unexpected. If you are lucky enough to find a sitting toilet, most likely there wont be any toilet paper. When I asked why, I was told that the poor people would steal it all 🙂 But maybe they really would, I don’t know… the difference in income is huge. Most public toilets are for squatting. Some of them are cleaned regularly.  Others are not. And than it is really something. An unforgettable memory  🙂

 

Related articles:

Part 1 – Traffic

Part 2 – Food

6 days in Beijing (part 2)

Food

There are small stall almost on every street, everything is fresh (or at least it looks so :)) and prepared just in front of your eyes. We ate on street very often or in some low cost restaurants. The hygiene there is sometimes quite “dirty”, but the food tastes great. My colleagues warned me that Chinese cuisine is terrible and that it is hard to find proper KFC or McDonalds, but I was very happy with the local food. I simply ate what locals ate. We even had crickets and some other insects, donkey, some weird barbecued mushrooms, sea weed and lot of beer 🙂 I bought some Chinese wine, but I can’t recommend it, it is not very good.

You can bring your own drinks into a restaurant, and even ask the waiter for a beer opener and glasses.

 

Pictures from Haiyang, China

Haiyang in China is what locals call “city in developement”, but I would argue it is one of those infamous ghost towns. There is lot of high-rise buildings where nobody lives. Some of these empty houses shine at night with bright colors, it looks like Las Vegas. The lights are beautiful and weird at the same time, I felt like in some science fiction movie. But maybe this is normal in China, because we’ve seen similar lights in Beijing as well…

6 days in Beijing (part 1)

Recently I’ve been to Beijing with a friend of mine and I would like to share some pictures as well as my thoughts about life in China. We did not travel as common tourists who stay in hotel, instead we tried to get to know the local people and see how they live. It was a great experience, and in some ways quite eye-opening.

Traffic

First thing which surprised us was the sheer immensity of Beijing. It is just incredibly huge. It took us about 1.5 hour by car to get to down-town, and all the time there were high buildings on both sides of the road. I am not sure if there are traffic rules in China (joking) but for sure almost nobody give a damn about it. It is a little anarchy and a little bit more dangerous than we are used to – we saw 5 or 6 accidents in just a couple of hours. It is quite common  to overtake other cars from any side you choose or to honk just to notify other drives that you are approaching. Who needs winker if you can just honk? 🙂

By the way, when I returned to Prague, I was surprised by the “deserted” streets. Where was everyone? Until then I thought that Prague is too huge for a simple life. But when compared to Beijing every city is small. Now even Prague seemed very quiet and almost provincial 🙂

Beijing subway is a chapter of its own. It is very cheap – just 2 Yuan for a ride anywhere. I guess it must be subsidized. Be prepared that security is taken very seriously in China. You bag will not be scanned only in the airport but also every time you enter the subway. Personally, I hate it. I felt like I am treated as a potential terrorist. But after we have experienced and survived the rush hour in subway I understood this security precaution. There was such an incredible mass of people during rush hour that we missed 3 trains until we managed to get inside. It was quite a fight:) But I don’t want to scare you 🙂

More will follow soon. Stay tuned…

Jak jsme vyhráli Dart Hackathon

Musím říct, že to byl naprosto super hackathon. Skvěle jsem si ho užil, potkal jsem zajímavé lidi a dost dobře jsem se bavil. Kromě pár shlédnutých prezentací na webu jsem jazyk Dart neznal. A neznal jsem ani kluky, se kterými jsem se dal do teamu, Tibora a Martina. Během dvou dnů jsme společně napsali krásnou aplikaci, osahal jsem si Dart, canvas, audio API, prostě věci, které mě už nějakou dobu zajímaly, ale neměl jsem čas se k nim pořádně dostat. Hackathon je k tomuto ideální přiležitost. Kde jinde si vyzkoušíte nový jazyk? Doma po večerech je to jednak trochu nudné, skoro smutné a vůbec… doma to prostě nemá tu štávu, zvláště, když máte rodinu a váš volný čas se počítá v desítkách minut… Takže, až příště uslyšíte o hackathonu a budete váhat, jestli jet, tak neváhejte a rozhodně jeďte, stojí to za to. Nemusíte se bát, že se ztrapníte nebo něco nebudete umět (a když jo, tak co… taky zkušenost 🙂 ) Ani jeden z nás neměl s Dartem žádné předchozí zkušenosti.

Chtěl bych tímto také poděkovat organizátorům z GUGu a Filipovi Hráčkovi za zorganizování téhle akce. A taky za večeři a zajímavý pokec 🙂 Takže to tak na úvod.

Teď k těm soutěžím. O tom, že bude nějaká teamová soutěž, jsem se dozvěděl až den předem, a poněkud mě to zaskočilo. Neměl jsem v podstatě nic připraveného, což se nakonec ukázalo jako plus, jinak bychom asi dělali na něčem mnohem nudnějším.

První soutěž byla o titul Top Night Coder. V podstatě šlo o to nakomitovat během noci do gitu co nejvíce commitů. (O tom, co je to git, se můžete dozvědět na zábavné přednášce od Tomáše Jukina @Inza.) Nikde nebylo řečeno, že commitnutý kód musí být spustitelný 🙂 Takže tuhle část za nás vyřešil maličký skriptík, který jednou za pár minut otevřel soubor, přihodil pár řádek, uložil, commitnul a pushnul do repozitáře. Fungoval skvěle až na jeden malý zádrhel: zapomněl jsem totiž, že se mi notebook po 30ti minutách nečinnosti automaticky vypne. Takže těch commitů zase tolik nebylo 🙂 Naštěstí Martin byl v noci vzhůru a fakt pracoval. (Respekt). Vyhráli jsme dartího oskara a tričko, které mi je velké.

Druhá soutěž byla náročnější. A to, že jsme vyhráli je asi dílem šťastné chemie a nápadu. Inspiroval nás projekt CoffeePhysics a několik uměleckých fotografií v Hubu. Chtěli jsme udělat nějaký grafický vizualizér hudby, něco jako jsou takové ty “šetřiče” v Media Playeru. Nebo proud balónků, které budou skákat v rytmu hudby a odrážet se od sebe, měnit barvy, velikost a tak… řešení kolizí objektů  a podobně ale bylo nad naše síly a časové možnosti. Balónky tam nakonec jsou, i když mnohem jednodušší. A vizualizér taky.  Ta aplikace je prostě zdroj radosti a blaha 🙂 Její vývoj mě fakt dost bavil. Díky kluci! Snad se vám náš výtvor bude také líbit. PS: Zdrojáky jsou na githubu, tak si s nima klidně hrajte.

PS: Další bonus tohodle hackathonu byl online rozhovor s jednim z vývojářů Dartu Sethem Laddem. Ale o tom příště v separátním blogpostu….

Idea for DART Hackathon

I want to make a simple  application which would help people to learn how to draw figures when they have no one willing to be a model for them.

The idea is really simple:

There is quite a lot of people who want to learn to draw other people, but they are either too shy to ask other people to be models for 20 mins or there is no one around or whatever other obstacle you can think of. My app tries to solve this by offering images of nude / half nude people (no porn, sorry, there are better sites for that) combined with a timer. You choose a photo of some model, set a timer, and start drawing by the model. After the time is out, you scan your sketch, upload it, and let other people comment on it and highlight for you mistakes in your sketch.

That’s it.

See screenshots below (Click the image for full size)

 

Dotless stack overflow exception

We have following .less snipet.

It was no problem for the old dotLess compiler, but the new one (v 1.2.2) has problem in the .anonymousPersonImage class declaration. It results in Stack Overflow exception and dotLess stops working.

Solution is to avoid having same names for mixins and classes.

.personImage() {
	float: left;
	margin: 0px 4px 3px 0px;
	width: 100px;
	height: 100px;
	border: 1px solid @defaultBorderColor;
}

.personImage {
	.personImage();
}

.anonymousPersonImage {
	.personImage();

	background-image: url('./Images/anonymousPerson.png');
	background-repeat: no-repeat;
	background-position: center;
}

Evoluce programátora

Zhruba před dvěma lety jsem se začal intenzivně zabývat programováním a věcmi kolem toho. Zvláště poslední rok byl hodně nabitý. Jedním silným impulsem byla kniha Coder to Developer od Mika Gunderoye, respektive výtažek z knihy na TekPubu, druhým impulsem byl exkolega @MicTech – líbilo se mi jeho nadšení pro věc a používané nástroje. Dále pak akce IPO48, která mě nadchla a díky níž jsem se začal zajímat o startupy (ne že bych nějaký rozjel, ale snil jsem o tom). Plus nespočet dalších menších impulsů, různých článků, nápadů atd… Zažral jsem se do toho natolik, že se mi o programování dokonce i zdálo, a to relativně často. Mám dosud v živé paměti sen, kdy vidím event-listenery navěšené na okně nebo jak listuji atlasem světa napsaným v XML.  Také jsem změnil zaměstnavatele a naučil se nové technologie.

Před několika měsíci jsem si však uvědomil, že mi něco v životě chybí, i když nevím, co přesně. Že mi prostě nestačí být jen dobrý (?) programátor a snažit se držet krok s novými technologiemi. Ze začátku to byl jen takový pocit, co se občas vynořil a zase zmizel, ale postupně rostl. Připadal jsem si poněkud jednostranně zaměřený jen na technologii a analytické myšlení. Za ty dva roky jsem skoro nic nenamaloval, nepřečetl jsem žádnou beletrii, jen samou literaturu faktu, a téměř jsem se ani nedíval na filmy. Pokud jsem nějak tvořil, tak jen u počítače, a to tak, že jsem (zase) programoval, jen něco jiného a trochu jinak než v práci. Časem jsem dospěl k tomu, že se potřebuji věnovat něčemu, co jsem si pro sebe nazval „pěstování osobnosti“. Možná to je nevyhovující výraz, ale můžete si pod tím představit nějakou snahu o rovnováhu v životě, vyvážení používání levé a pravé hemisféry, hledání smyslu svojí činnosti a tak vůbec…

Někdy na konci léta jsem si koupil knihu o lucidním snění od Roberta Waggonera, která mě donutila k zamyšlení. Pokud to, co autor píše, je pravda, tak musím dost přehodnotit svůj (materialistický) pohled na svět. Protože snové jevy, které popisuje (jasnozřivost, setkání se zesnulými, varování do budoucnosti, vhled…), nejsou výsadou snů, ale jsou popsané napříč všemi náboženskými systémy. Co když jsme takové věci kdysi uměli, ale už neumíme? Co když navzdory našemu technologickému pokroku a vědě ztrácíme něco pro nás hodně důležitého a neuvědomujeme si to?

Knihu jsem ale nedokázal přečíst najednou. Zhruba v půlce jsem ji přerušil, protože byla na mě už příliš „mystická“. Potřeboval jsem něco „stravitelnějšího“. Takže jsem si koupil knihu Pragmatic Programmer a vrhl se zase do světa programování a technických blogů. Čím dál víc mi ale chybělo malování a nějaká rukodělná tvůrčí činnost. Nakonec jsem na doporučení internetového známého Matouše Boráka shlédl záznam rozhovoru s malířem Vladimírem Kokoliou. Pod článkem se rozproudila diskuze, která mě ze zpětného pohledu povzbudila k tvoření s dcerkou (2 roky). Výsledky můžete vidět na mém blogu Tvoříme s dětmi. Začal jsem pro ni tvořit různé hračky z papíru, učím ji malovat, lepit, stříhat a tak podobně. Když mě občas za chůze do práce políbila múza a něco tvůrčího mě napadlo, cítil jsem, že se začínám „srovnávat“.

Vrátil jsem se ke knize o snění a začal svým snům věnovat více pozornosti. Lucidní sen jsem zatím neměl, ale pamatuji si teď sny přibližně z každé druhé noci (což je proti odhadem dvěma snům za měsíc dost pokrok). Některé jsou splácaniny a moc mi nedávají smysl, ale jiné jsou vysloveně symbolické a zanechají ve mně silný dojem.

Takže abych to shrnul. Ničeho nelituji, díky tomu, že jsem se zapálil pro IT, jsem se  hodně naučil, a i nadále se tím budu bavit a živit, ale je hrozně potřeba vidět dál, než jen svůj omezený rybníček profese a kariéry. Rozvíjet se ve více než jen jednom směru.

Také dnes víc než kdy jindy žijeme ve městech a postupně ztrácíme kontakt s přírodou a často i sami se sebou. Možná to zní hloupě, člověk je přeci v kontaktu sám se sebou pořád, že jo? Ale možná, že to neplatí tak docela. Možná jsme dnes díky záplavě informací a techniky ohlušení a tiché impulsy zevnitř už neslyšíme. Což je hrozně těžké nějak ukázat… Jak ukážete na něco, co chybí?

PS: Snad tenhle článek dává smysl, pořád mám trochu pocit, jestli to náhodou není slátanina. Moje žena říká, že nemám žádnou životní filosofii, což samozřejmě to není pravda :). Moje filosofie je právě to hledání. Možná by se to dalo nazvat pouť, protože ve snech se mi téma putování objevuje velmi často. Aniž bych se o to nějak snažil, tak se v mém životě dost pravidelně střídají dva životní přístupy: analytický, popsaný na začátku a tvůřčí, kdy pro změnu hodně maluju a poslouchám hudbu a tak nějak si víc všímám svých pocitů.

How to set default browser in Visual Studio 2010

After every upgrade of Resharper I always encounter the same annoying error: Default browser in Visual Studio is reset to default browser in Windows. I use Chrome but when I need to debug JavaScript I always use Internet Explorer with VS. It’s by all means the best debugging tool for JavaScript I’ve encountered (I know that some people hate MS products, so lets the flame wars begin 🙂 ).

One workaround is to right click on any .aspx page and choose “Browse with…” and then set IE as default. But this is not always available. But what if you are developing with Razor where are no .aspx files there? Then you are stuck, aren’t you? You can of course add blank .aspx page to your Solution and then right click on it, but that’s very stupid solution.

Luckily there is a plugin for it. Obviously lot of people find that annoying too. It is called “Default Browser Switcher” and it does exactly what you would expect it to do. It allows you to easily switch default browser just by clicking on a small icon. Thumbs up.

PS: If you want to gently push Microsoft to include such a feature in the next version of Visual Studio please vote here.