A video camera for runners

October 11th, 2012

I have been dreaming about such gadget for a long time. It is a small video camera in a water-proof case. Why do I need such a gadget? Since I am a long-distance runner I often visit nice places – forests, mountains, sea-shore bikeways, etc. When I run I keep looking around, enjoying the surroundings, and I often wish I could share it with my friends. This is why I take a camera with me, which is actually my iPhone. But I often want to shoot video, which means the device should be able to stay outside for a long time, rain or shine. An iPhone is simply too fragile.

And here comes a DVR in a water-proof case. Small but strong, and rather cheap. I bought it today for just 4000 NTD (about 100 EUR) in a local electronics store. And it perfectly fits into my wet hands when I am running. So now, in addition to the text and pics, expect videos to appear in my running reports.

Book review: Host Your Web Site in the Cloud: Amazon Web Services Made Easy

August 16th, 2012

I bought this book because I thought it is about web site building. There are many frameworks that facilitate this process and I like reading books about them. But this book is not about web site building, despite what the title says. So, I totally agree with one Amazon reviewer who mentioned that the title is misleading.

So what is this book about? It is about Amazon web services. It is a good introductory book, with each service explained in a great detali: how to set it up, how much it will cost, how to start using it. There are lots of examples written in PHP, and they are easy to follow. So, in general it is a rather useful book if you want to learn how to build web apps. The problem is that nobody is actually building the apps the way this book teaches. The code snipptets in this book use some low-level API. It is a good way to demonstrate all the features of Amazon web services, but when it comes to building a web app, it is more about architecting the app, picking the right libraries and frameworks, etc. I have not investigated this question, but I am pretty sure there are dozens of higher-level libraries for AWS that make building apps a whole lot easier than this book explains. For example, nobody is going to code a data input form by using pure HTML/PHP these days. In modern frameworks such as Drupal and Django people only have to provide data model, and the framework takes care of the rest, i.e. how to input data according to the model, how to present it to the user.

Still, this book is probably a good start for people who contemplate buidling web apps. I know there are many people who succsefully migrated their web sites from traditional hosting companies to more flexible Amazon cloud hosting. Even though the book does not explain how to do this, it exaplains how the basic blocks work, and then it is only the matter of connecting the dots.

Book review: Kingpin (a guide to cooperating with authorities for fun and profit)

August 5th, 2012

I have read many books about computer security. Many of them tried to shed light on the cybercrime, but all of them failed. Most of the time, people seem to be afraid to touch sensitive stuff, because this typically involves revealing identities of cybercrime bosses and their counterparts – FBI operatives. And without mentioning the names a book becomes too generic and boring.

Here is the book you gotta read. It is the best book written in a decade about the subject. It describes the life of the most notorious American hacker named Max Butler. He is the guy responsible for stealing more than 1 billion US dollars from credit cards. If your credit card ever got abused (I know such people who suddenly found 20 pillows charged to their credit card) then blame this guy.

The book is written with an intimate knowledge of hacker’s daily routine. It also sheds light on his early days, the time when he was growing up, his relationships with other people, etc. This is only possible because the author – Kevin Poulsen is a former black hat hacker himself. The book makes it very clear that hackers are neither good nor bad. Of course, if your credit card suffers then they are obviously bad from your point of view. More generally, however, hackers are responsible for many security tools that help protect networks from some other bad guys. It is pretty clear that some bad people will sooner or later attempt to stage a 9-11-scale attack virtually. This is indeed possible because critical infrastructure is controlled by Internet-connected machines (including flight control towers, power plants, etc.). So, these hackers give specific warning signs to governments: protect your networks or you will be own3d pretty soon.

So, from my point of view, it is very difficult to judge the hacker, even those that steal money. They do harm to individual people, but they are rather useulf to society as a whole. I am pretty sure that without their help (and it is obvious that US authorities are using their help), the US infrastructure would fall victim to some foreign government.

The funniest part in this book is the description of how the hackers actually do their job. Typically, it is a combination of hacking, social engineering, and some luck. For the first part, you need to find an exploit in some popular software such as Internet Explorer. Then, you have to convince the users to visit the page that contains the malicious code. Typically, hackers send some funny e-mails containing a link, which make many people click this link. After that the exploit lands on victim’s machine, and it becomes own3d. What can you find on victim’s machine? Well, it depends. If it is a personal machine of some celebrity or FBI officers, you can find his/her e-mails, documents, plans, schedules, etc. Tons of funny stuff. However, if the victim machine belongs to some enterprise such as local pizza shop then you can get access to customer’s credt cards, if you are lucky. The problem is that many shops fail to abide by VISA security standards which demand credit card number be deleted after processing the order. However, it turns out that many restaurants store YEARS of customer’s traces, which makes them an attractive target for hackers.

After stealing credit card numbers, the hacker passes them to a gang of shoppers, who buy lots of random products, only to sell them on eBay later on. This kind of dirty business involves thousands and thousands of people and is responsible for billions of dollars in losses for credit card companies. But hackers are saying that banks are rich and greedy anyway, so they should suffer a bit (for a credit card theft, the client is only responsible for initial $50 in losses, and the bank carries the rest).

The book makes it very clear that FBI and Secret Service are eagerly interested in hackers’ community. However, it is not just “shoot them all” approach. Rather, the authorities try to infiltrate the hackers’ community (sometimes they even run hackers’ forums), identify the key people and recruit them. It is funny that the identities of recruited hackers is an even bigger secret than identities of FBI operatives. Sometimes, FBI agents from one city are not aware of the fact that the hacker has been recruited by agents in another city, so they attempt to arrest the hacker during his trip. The funniest part begins when they start searching hacker’s house, and then the FBI operatives are told not to search too deeply, implying that the house belongs to the cooperating hacker. So, when the FBI agents arrive with a search warrant, the hacker simply hides his hard drive in a trash bin, and the people who perform the search “fail” to find it. What a funny situation! Everybody understands that all of them are working for FBI (or some other 3-letter agency), but they cannot reveal each other’s identities!

So, the book is a praise to the 3-letter agencies who managed to recruit many hackers. The uncooperating ones are put behind the bars. This is an American story with a happy end. Are there any threats left?

Typhoon Saola hits Taiwan

August 3rd, 2012

Earlier this summer we expected some typhoon to hit Hsinchu. However, nothing happened back then as that typhoon strayed away. But this time we were less lucky. Or maybe more lucky (depends on who you ask), as because of this typhoon our working day was cancelled. In fact, the heavy rain started Wednesday evening at around 8PM, and then it inteisified during the night. So when I woke up at 7AM the next day I found out that there was nobody on the streets. The whole village was sleeping. Then I realized that a warning has been passed, which means everybody stay home.

But I still walked to the office, only to find it totally empty. I spent some time browsing Internet, and then walked back home at around 3PM. There was light rain during the afternoon, but Thursday night a heavy rain began once again. I started to think that it might prevent us from coming us to work today, Friday, but this did not happen (unfortunately). The rain stopped late at nigh, and therefore in the morning everybody could safely come to work.

But even a single extra day of vacation is a good gift from nature. Thank you, Saola. Here is video.

My vacation, part 4

August 2nd, 2012

My sister, her husband, and their 2 babies arrived to Domodedovo airport at around 2PM. The moment when we met was by far the happiest in my entire vacation – we have not seen each other for more than 5 years! We went to the train station and got on the train to Dzerzhinsk, our home town. At around 11PM we arrived there. Quite surprisingly, the children were awake which is probably because of the unusual environment. So, after we got home, we decided to have a dinner, even though the time was around midnight. We drank some wine, ate some food, and talked for a while. Obviously, after not being together for 10 years there are many things you can talk about…

Even though my vacation was coming to an end, there were still 3 days that I could spend with my family. So, we decided to invite as many guests to our house as possible. On Tuesday we had a visit from my aunt’s family. Then on Wednesday we went to a children’s park where my sister’s family had some fun. Then, in the evening my cousin Natalia visited us. I brought a lot of green tea from Taiwan of various kind, so we had a tea ceremony. In our family we enjoy this kind of activity a lot.

Thursday was my last day at home. In the morning I went shopping to get some souviniers for my Taiwanese friends. Then in the evening my cousin Slava visited our house, and we had a farewell party for me. On Friday morning I got on the train to Moscow, as the plane to Hong Kong was scheduled to leave in the evening.

What can I say about my vacation? It was not vacation at all. I did not have a single day of leasure – either travelling or throwing parties for friends and relatives. But I think this is how it should be – you gotta see your friends and relatives every now and then, and since I spend most of my time abroad I should use every day while in Russia for visits. So I am feeling rather happy about my vacation, which was no vacation at all.

My vacation, part 3

July 31st, 2012

After two busy days we had some more time to sleep on Sunday, as our departure was scheduled for 10:30 AM. However, the whole day was shaping to be as exciting as previous two. We were heading toward Izborsk, a 14th century stronghold. Right now the inner part of the castle is closed due to repair works going on, so we only briefly walked around its walls.

In addition, we went hiking on a short trail through the fields. The nature is really beautiful in this part of Russia. For some reason, it seems to me that it conveys optimistic high-flying spirit, because this is the place where Russian state originated from about 1000 years ago. There is a special place named after Truvor, one of the early rulers of Russia.

Then, after lunch we proceeded to Pskovo-Pechersky Monastery, a very important place in Russian Orthodox culture! This is the only monastery that stayed open through Soviet era. This was partly due to the fact that it was located in Estonia after October Revolution, until Soviet Army invaded Estonia in late 1930s. Then the WWII broke out and the monastery went under control of Nazi forces. They did not close it either. The following Soviet rulers tried to close it, but all of them failed.

I expected to see monks in the monastery, but I only saw hundreds of tourists! I spent about 10 minutes staying in the middle of the main square, and saw just 1 monk far away. Apparently, they do not like to mix with tourists, this is too distracting for monks. Another problem was that only 1 church was open, the others were closed due to construction works, or for some other reasons.

Then we headed back to Pskov, to catch the evening train to Moscow. I arrived to Moscow the next day at 6:30 AM in a rather cheerful mood. This was because on that day I was going to meet with my sister and her family. I have not seen them for more than 5 years! Now I finally had a chance to see my two little nieces, the first time in their lifetime. So we met with my mom and with uncle Sergey at Kursky railway station (my mom arrived from home), and all of us went to the airport to pick up my sister and her family.

Every day of my vacation was different from previous ones, and exciting in its own way. I will keep posting about my vacation!

My vacation, part 2

July 30th, 2012

During the second day of the tour we went to Puskin resort, a large natural reservation which included the farms called Michailovskoye and Trigorskoe. They are located 120km from Pskov. First we arrived to Trigorskoe, a farm that belonged to friends of Pushkin, which Pushkin visited numerous times. Unfortunately, taking pictures inside the buildings was not allowed. The farm house includes a number of rooms, each of which has a specific purpose – a dining room, living room, etc. Of course, there are hand-written manuscripts of Pushkin in almost every room, so that people who like Pushkin can really appreciate this kind of artifacts.

Then we went to Michailovskoye, a farm that belonged to Pushkin predecessors. It has rather modest houses, as those people were not very rich. Still, Pushkin is remembered not for his richness, but for his verses. Our tour guide could cite lots of Pushkin’s poems by heart, and this made it possible for us to feel the true spirit of Pushkin. Indeed, he wrote many famous poems in these farm houses.

It is really amazing that great, long-lasting things can be done in such a modest environment. In Russian langauge there is a proverb “A single warrior cannot win in an open field”. Pushkin proved the opposite – most of his greatest poems were composed while he was walking through alleys of the nearby forest. Then we had lunch and proceeded to Svyatogorsky monastery where the poet’s tomb is located. It is located right next to the main cathedral, meaning that Pushkin died as a true Christian, even though the cause of his death is an attempt to kill some other person. Sometimes, a single minute of sincere remorse can transform a great sinner to a rather benign Christian.

Pushkin died with a huge debt left, which Tzar Nicholas I took care of. His entire life and death is a mystery. But it makes it clear that by writing verses you can make a huge impact to culture, you can truly transform the world around you. It is not just money that keeps this world running….

Then we came back to Pskov. It was a lucky coincidence that city’s birthday was celebrated during that time. There were lots of markets throughout the city where one could buy nice souveniers. One thing that people there are good at is making souveniers – there were so many of them! After making my way through market I went on to explore the city a bit more and walked for about an hour. Then I came back to hotel and fell asleep.

My vacation, part 1

July 30th, 2012

Today is the first day of work after vacation, and yes, it is time to write a trip report. Overall, it was a very exciting vacation, with lots of travel, and most importantly – we had a family reunion after not being all together for 10 years.

So here is how it went: I arrived to my home town Saturday morning, and then spent some time at home. On Thursday I went to Pskov region – an exciting tour through northern parts of Old Russia. Upon completing this tour on Monday, we met with my sister and her family in Moscow airport – and went home all together. Then we spent 3 wonderful days at home, after which I went back to Taiwan.

So I will start with a report about my trip to Pskov region. This tour included 3 days of sight-seeing: Pskov itself, then Pushkin natural park (including a visit to his tomb), and finally – some other Old Russian landmarks – Izborsk and (last but not least) – Pskovo-Pechersky monastery.

To get to Pskov I had to take train from Moscow. It was a convenient journey – we left from railway station in Moscow at 6PM and arrived to Pskov at 7 AM. Then we had a breakfast. Our group consisted of only 8 people, so we traveled in a small bus.

After breakfast we went to the bank of Velikaya river, the main river in Pskov, and looked at city’s most important landmark – the Kremlin (Krom). It is a very remarkable construction – the length of the walls was over 9 km, by far the longest Kremlin wall in Russia. Apparently, Pskov was a very prominent city during medieval time – on par with Moscow. But most of the buildings were destroyed during WW II, including Krom, so what you can see nowadays is a newly built stuff which of course resembles the old construction.

A Trinity Cathedral is located inside Krom. Local people claim that this was the first Trinity cathedral in Russia, first version of which was built in 10th century. Indeed, the next Trinity cathedral known to us was built in 14th century by Sergius of Radonezh. So, Pskov is also important from the religious point of view. Indeed, St. Olga of Kiev was born in a village not far from Pskov.

There are so many beautiful churches in Pskov! They are designed in either Pskov style or in Novgorod style. Both styles are quite different from what you can see in other parts of Russia. For example, the shape of the bell tower is quite unique. It is interesting that many churches have survived the WW II, including Mirozhsky monastery, which contains frescoes of 12th century – the only place in Russia which contains pre-Mongolian frescoes which survived nearly intact. I visited this monastery later during that day, thus fulfilling one of my deams – I saw the gorgeous frescoes! It made me wonder how those “old” people could do such amazing things! Apparently, they were very educated and very skillful. Nowadays, we have lots of opportunities for educating ourselves in various disciplines, but people spent 1/3 of their lives sleeping, then another 1/3 entertaining themselves by watching TV, playing computer games, or just eating

What I can see from those examples of early Christianity is that those people had real passion to build for ages. We, the modern people, do not have such passion. Do we have any passion at all? The problem is that whatever we do is not supposed to last. We lost our passion, we lost of creativity. We are just nuts and bolts of the global economic machine.

After the bus tour through Pskov we went to the Pskov museum which has an amazing collection of medieval artifacts. In particular, I was impressed by precious items made of silver, and also by collection of icons – again, painted in a unique Northern-Russian style. Then we had lunch and that was it for the 1st day. Still, there was plenty of time, so after checking into hotel, I went to Mirozhsky monastery on my own. Luckily, I was able to join a guided tour, from which I learned a lot about the history of this monastery, as well as the meaning of the frescoes. Obviously, they are drawn not in a random order, they actually tell a number of Bible stories, including both New and Old Testament.

The painters of these frescoes were so skillful that they took into account the location of windows inside the cathedral, to make use of the beam of light that is casted by the sun. For example, here you can see the figure of Archangel Gabriel highlighted through the window. After visiting the monastery I spent some time exploring the city, and then at around 9PM I came back to hotel. I was rather tired, but very very happy! I saw many unique ancient churches, icons, and frescoes, those things that constitute Russian culture, that every Russian must see!

But it was only the first day. More exciting things were waiting for me during the next 2 days of the tour. What an exciting and joyful time it was!

My new web site dedicated to running

July 10th, 2012

Years are passing by, and each year I am running a few marathons and half-marathons. For each of them I generate a write-up and a picture gallery. But there was no centralized place where I could post my war stories. Finally, I created one, with the help of Drupal, a wonderful site building system.

Here is it. You can see a grid of titles, each one representing a single running event. If you click on a title, a web page showing detailed description opens up. It even includes a map of where the marathon took place. Beneath the map and summary you can see my report. And after the report – a picture gallery (I am always trying to snap a few pics as I go along the way, even if organizers also take pictures).

The funny thing is that it was really easy to build this web site. I did not have to write any code to create a data schema or the UI to enter the data. All of this is done completely automatically. I only need to specify what kind of data I want to store – text fields, geo-location, star voting widget, etc. Very high-level and rather intuitive. The only part that needed some coding was the styling part, that is, when you actually want to specify that the map should be aligned on the left-hand side, and the summary block – on the rigt-hand side. For that purpose I used CSS injector plugin.

In addition to My Marathons web page I would like to build My Readings page which will be dedicated to the book reviews. With the proliferation of book readers I noticed that I am reading more books now. Yeah, these book readers are really useful gadgets, even though I don’t have a dedicated book reader. I am using a rather general-purpose inexpensive tablet manufactured by some Chinese manufacturer called ErgoTech.

I am really excited about Drupal now! I think it perfectly fits to the golden middle on the scale of skills one has to posses in order to build a web site. On the one end there are template-based web site builders which don’t make it possible to build custom web apps. On the other extreme is the pure HTML and Javascript, which takes a lot of time to learn. So – Drupal is what I really needed!

Learn Drupal!

Book review: Principles of Beautiful Web Design

July 2nd, 2012

I read this book because I am trying to educate myself in the area of web technologies. As some people mentioned in their reviews of this book, it bridges important gap between pure mortals and web designers. It is nicely written, in a fluent and ironic style. Still, the book maintains a logical attitude toward art of web design. From the very beginning, I liked the fact that table of contents includes only 5 parts, which makes it possible to keep global picture in mind as you make your way through this book. They are:

  • Layout and composition
  • Color
  • Texture
  • Typography
  • Imagery

Roughly speaking, these parts correspond to steps one needs to make when building a new web site. Being organized is essential to making it through such a complicated process as building a web site. Each chapter describes some techniques professional designers use. But the explanation is simplified as much as possible, so that people of various backgrounds can easily follow. The downside is that the book sounds way too elementary every now and then. For example, it spends a fair amount of time describing some CSS properties. There are tons of CSS guides on the Internet, you really don’t have to write a book about it. The good thing is that each step is illustrated by screenshots of web sites that author belives are good representatives of certain technique.

A collection of links is provided in the end of each chapter. Many tools that facilitate web development have been developed. So if the reader wants (s)he can start exploring them right away. In paritcular, I found the following two examples to be very interesting:

  • 960 Grid System – a framework for building grid layouts. I did not realize that most commerical-grade web sites use 12-16 columns in its grid. I thought that web page has 2-3 columns.
  • Color Scheme Designer – a tool that helps you select a color scheme based on theory of harmony (which color pairs with which). Then you can grab the resulting palette and colorize your web site.

So, I found the first few chapters to be rather interesting, but the rest of the book to be rather dull. The good thing is that you can treat this book as a potpourri of essays which you can read in any order. If you don’t want to read about Textures for example then you can easily skip it. To summarize, this book is a good example of recreational reading for a computer geek.