Skip to content

Get the log line with date range

If you want to extract log with prefix is date time like this

[2017-05-01 02:00:06,300] this is a log line details

We might use the awk command following with the condition

awk -F'[]]|[[]'   '$0 ~ /^\[/ && $2 >= "2017-05-01 00:00" { p=1 } $0 ~ /^\[/ && $2 >= "2017-06-01 00:00" { p=0 } p { print $0 }' details.log >  2017-05.log

 

 

Advertisements

Google Maps traffic, It is not “The world’s local navigation”

There is no debate about the market share of the map and navigation anymore. Google Maps beat all other competitor by the Android Phone. Apple navigation is some kind of useless in Vietnam, it shows 32minutes for 28km through the centre, Google map tells 1hh15, more feasible. Other competitors have own advantages, Vietmap, Vietbando, Here, sygic, but no one has released the same function based on user collected data, realtime traffic data.

 

3897227_google-maps-1Traffic data – image: tinhte.vn

While the traffic data is a useful reference information, we can not rely on this for navigation. Why?  But it still not something that can be used while driving, it’s not safe to check on the screen rather than focus on the road, where any moto-bike might appear from any direction on anytime.

The voice control is just for some one doesn’t know clearly about the city and need turn to turn direction. It doesn’t give any recommendation rather estimation when we arrive.

The traffic in Vietnam is chaos, any algorithm which is success on other places can’t be applied in here. Even Hanoi and Ho Chi Minh City have different driving regulations.

From my point of view, with experience of more than 10 years driving through the city, I have some idea to make a useful local navigation which could help traffic in Vietnam a lot.

What do I need?

I drive a lot. My Moto bike reached 50.000km for 4 years. 35km everyday, just go around the city 🙂 I live in the north of city, but sometime I worked in the south). I knew many route, knew how the city’s traffic growing, and some how, how people driving in the city. I have a good habit, be on time. Based on my experience, I might predict exactly which route I should go to the destination to be on time. But it’s just for moto-bike, I’m driving a car now, there are many factors could affect the journey…

  1. I need a navigator help me to be on time.
    It’s not just how I can drive to the destination. The importance is when I’ll arrive. The Google Now has remind to leave, but I can’t rely on this one. I has experience that Google map told me it’s take 40 minutes to the destination, actually more than 1 hours.
  2.  I need an assistance. 
    Rather than just giving me option to choose, I want an assistance should choose the route for me. I have total 4 main routes which could lead me to the office. But the shortest is not the fastest, it based on when I start, which weekday, any special construction, or just a back to school day :).
  3. A precious time to start 🙂
    Believe me or not, sooner is not better (see the shortest is not fastest). There is some time frame in the date that some route/place is peaceful. If we choose exactly time to start with careful prediction, we might save time and money.  Go to work at 5am that I could be at the office at 5am55 but it is not a good idea.
  4. Crowdsourcing traffic data
    It’s not just live traffic data, It seem useless on the road for car, we can’t not easily to change the route while we on a traffic jam. We should predict it and prevent it happen.
    People have routine, it might change overtime, but I’m sure that most of the people would choose the same route for same destination for daily schedule. Go to work, go home, even the taxi, uber, which based on the passenger pattern.  Read through the people mind, we might predict exactly what would happen.
    With user data, we might guess exactly the vehicle, (moto-bike which is most usage but not available on Google maps, car, bus, taxi).
    Based on the traffic data, we might upgrade the Map data automatically, forbidden road, one way road,  car turn forbidden based on time, speed limit, internal roads …
  5. Know me better
    It should know how I drive, do I prefer this road.
  6. All in one place to help a better live
    Imagine that Google Assistance, ask you to go to bed sooner if you want to wake up at 6am, start driving no later than 6:45 to be at the meeting at 8. You might drive 15 sooner for most pleasure driving and save the gasoline or choose the highway for fastest road.
    30 minute later. Hey you, it seem like we have an accident in the next corner, don’t worry, I will help you out, make an u-turn an turn right at the crossroad  (just like realtime satellite navigation on action movies) . It seem like you would be late for the meeting. Do you want me to make a call to re-arrange?

What can I do?

Google can not know the city better than me. Although I can’t not access to the raw traffic data or the Google user history. But I could provide a myself experience based on location history. Use my knowledge of algorithm to help myself to to work. If I’m lucky enough, I could ask my friend from FPT to provide some traffic data based on CCTV, which some kind of a city project.

Let wait what I can do.

ulimit trên MacOS, như ác mộng

Làm đủ mọi cách vẫn bị cái ulimit nó hành. Cuối cùng kiếm ra được cái Link về vấn đề này trên MacOS, Apple nó chơi xấu developer.

http://blog.dekstroza.io/ulimit-shenanigans-on-osx-el-capitan/

Học xài vim

Lâu rồi mình không viết bài lại giờ mình có vài ý tưởng viết 1 blog để chia sẽ cách sử dụng vim và hướng dẫn các bạn có thể tự học sử dụng vim editor nhé

Trên tay bàn phím Microsoft Sculpt Ergonomic – Tốt cho bàn tay của bạn

Chào mọi người, xin tự giới thiệu, mình là một lập trình viên vì vậy phải sử dụng bàn phím khá nhiều. Cách đây vài tháng do sử dụng màn hình rời nên mình tìm kiếm một bàn phím để hỗ trợ tốt hơn cho công việc. Mình thích sử dụng scissor-swtich hơn là mechanical-switch vì đã quen với laptop và không muốn làm ồn người khác lúc làm việc. Chợt nhớ đến khi xưa sử dụng bàn phím Microsoft “natural” ergonomic huyền thoại. Trên các trang đánh giá thì bàn phím Microsoft Sculpt Ergonomic thuộc trong một trong những bàn phím “công thái hoc” tốt nhất. Nên mình tìm mua để hỗ trợ thêm cho công việc. Tiếc rằng Microsoft không phân phối chính thức bàn phím này ở Việt Nam nên đành nhờ anh @tetepro đem về cho mình từ US.
DSC00236

1. Nhận xét bên ngoài:

Nhận xét đầu tiên của bàn phím là thiết kế nhìn rất ngầu và đẹp. So với các bàn phím Ergonomic khác thì Sculpt nhìn trông không kì dị, nhưng lại rất bắt mắt cuốn hút. Các bạn nữ trong công ty đều khen bàn phím đẹp. Thiết kế thanh thoát như vậy nhưng bàn phím khá nặng và đầm (842g), thiết kế như vậy khiến bàn phím khó bị xê dịch khi gõ hơn, nhưng điểm trừ là không cơ động vì khó bỏ chung balo với laptop.
attachFull3315110
Kiểu bàn phím Microsoft mình đã từng dùng, (hình lấy trên Internet)
DSC00238.jpg
Bàn phím đi kèm với 1 đế rời
DSC00240.jpg
Đến này giúp nâng độ cao của bàn phím lên thêm một chút nữa nếu các bạn muốn, dùng để điều chỉnh góc của bàn tay so với mặt bàn và bàn phím. Mình sẽ giải thích rõ hơn ở phần sau. Điều mình thích nhất ở đế này là các cục nam châm sẽ tự động hít vào bàn phím, để 1 phát là ăn ngay và rất chắc chắn.
Ngoài ra điểm mình thích về bàn phím nữa là phần kê tay. Nếu như các phiên bản cũ chỉ là phần nhựa bình thường. Sculpt Keyboard sử dụng một lớp bọc mềm, rờ vào rất sướng. Nếu các bạn từng dùng bàn phím cơ nhiều, sẽ thấy phụ kiện kê tay không thể thiếu để tay không bị mỏi. Miếng lót này rất mượt nên không tạo ma sát cho tay lúc di chuyển. Tuy nhiên điểm trừ như các bạn có thể thấy là nó rất dễ dính dơ. Mình không biết có rửa được hay không nhưng chắc mình sẽ không thử.

2. Trên tay lúc gõ:

 

Best practice:
Đây là tư thế 2 bàn tay khi gõ, theo trang http://thewirecutter.com/reviews/comfortable-ergo-keyboard/
thì đây là những tư thế tốt nhất cho cổ tay và ngón tay tránh hiện tượng mỏi, và các bệnh văn phòng liên quan đến tay.
[IMG]
[IMG]
Theo bài viết thì không có một thiết kế bàn phím nào được gọi là tốt nhất cho mọi người. Tuỳ theo cơ địa từng người mà sẽ tốt với một thiết kế riêng. Tuy nhiên việc tách bàn phím ra làm đôi rõ ràng sẽ giúp cổ tay chúng ta thẳng hơn, không bị căn và kéo lúc gõ giảm bớt hội chứng ống cổ tay với những người gõ nhiều.
Xin lỗi mấy bạn do mình phải dùng 1 tay để chụp hình nên không có ảnh khi cả 2 bàn tay trên phím được, nhưng sẽ có video clip lúc gõ phía sau.
DSC00251.jpg
Thêm một điểm mình thích ở bàn phím là có thể sử dụng lúc đeo đồng hồ, không hề bị vướng như các bàn phím khác, kể cả khi đã sử dụng miếng kê tay.
DSC00243.jpg
Tay phải cũng theo hướng tự nhiên chứ không bị uốn cong.
DSC00241.jpg
Chụp hướng ngang, tay thẳng và rất thoải mái.
DSC00247.jpg
So sánh với Apple Keyboard I
DSC00249.jpg
Cổ tay hơi nghiên nếu muốn để tay trên toàn bộ phím.
DSC00244.jpg
 Vì là bàn phím không dây nên có thể để trên đùi để gõ dễ dàng, khi làm việc mình không dùng chuột nên không bất tiện. Có một điểm dỡ là phím FN chức năng tăng giảm âm lượng cần phải dùng nút gạt phía trên chứ không phải phím FN
DSC00246.jpg
Receiver và Pin theo máy, Receiver có thể dấu dễ dàng phía trong, 2 cục pin mình xài hơn 2 tháng rồi vẫn thấy không có dấu hiệu hết. (1 ngày dùng hơn 10 tiếng nhé).
DSC00245.jpg
Bàn phím số rời, mình hầu như không dùng. Chị kế toán rất thích nhưng không cho được, vì dùng chung receiver. Mình chỉ mua bàn phím thường chứ không sử dụng chuột đi chung bộ bàn phím vì rất khi sử dụng.
DSC00253.jpg
Toàn bộ setup góc làm việc.
Có một điểm trừ của bàn phím và màn hình Dell 2515H đó là cổng USB phía sau, nếu chỉ sleep máy rồi gắn USB vào thì không sao, nhưng nếu tắt màn hình bật lại thì bàn phím không nhận được nữa, phải tháo receiver ra lắp vào lại. Hơi bất tiện vì mỗi ngày phải lắm 1 lần.
Khi sử dụng với MacOS, bàn phím làm việc rất tốt, các phím chức năng chạy bình thường. Phím Control rất to dễ bấm không sợ bị bấm hụt hay bấm nhầm. Thường trên bàn phím Mac mặc định các lập trình viên dùng vim phải Map phím Ctrl với phím khác như Caplock, Tab hoặc Fn.
3. Âm thanh lúc gõ:
 
Như mình nói lúc đầu, mình sợ ồn nên không muốn dùng bàn phím cơ. Lúc làm việc mình dùng vim IDE để code Python và hoàn toàn không dùng chuột, cho nên một bàn phím tốt và thoải mái giúp tăng hiệu suất rất nhiều. Theo mình để ý thì mình chỉ ssử dụng 8 ngón khi gõ máy (ngón út phải  và ngón cái trái mình không sử dụng). Khi gõ tiếng Việt được khoảng 120 kí tự/ phút, tiếng Anh hay code được 60 kí tự/ phút (không dùng code auto complete nhé). So sánh về tốc độ thì bàn phím Sculpt không giúp mình gõ nhanh thêm được chút nào hết. Nhưng độ sướng khi gõ thì tăng lên rất nhiều.
[MEDIA=youtube]qvyhFSbK-3E[/MEDIA]
4. Kết luận:
Nhiều bạn nói rằng bàn phím này sẽ khó làm quen. Đối với mình do từng sử dụng các đời bàn phím trước (cũng không dùng hơn 10 năm), sau khi quay lại thì không bỡ ngỡ, mất chừng 3 ngày để quen lại. Theo mình nghĩ đối với những người chưa dùng bàn phím kiểu này bao giờ, nhưng có thể gõ mà không nhìn bàn phím thì mất chừng 2 tuần để có thể bắt đầu sử dụng quen mà không bị nhầm phím.
Mình vẫn chuyển đổi sử dụng giữa bàn phím trong Macbook và Sculpt một cách bình thường mà không gặp khó khăn gì, kiểu như các bạn chạy xe số và xe tự động vậy, thao tác sẽ khác nhau một chút nhưng sẽ học được. Tuy nhiên bây giờ dùng bàn phím thường gõ thì đúng là cổ tay mình hơi khó chịu một chút và cảm giác bị căng.
Nhưng giá trị quan trọng nhất mang lại cho các bạn chính là sức khoẻ. Sẽ không nhận thấy ngay lúc này mà sau sẽ thấy dần dần. Một anh đồng nghiệp công ty mình đã bắt đầu cảm thấy mỏi cổ tay lúc làm việc, mình đang nói ảnh tập dùng thử cái này. Nếu ổn sẽ đề nghị công ty trang bị cho tất cả nhân viên.