After 3 months lengthy campaign, totally 6 billion dollars spent by the two candidates, the chaotic U.S. president election finally comes to the end. The world return to its order. People can return to their normal life. It is an excellent result. Another great day for democracy in United States.
Fiscal cliff, a country and world top economy going downhill, mountain of debt, and hostile congress, no matter who gets into White House, these are all the problems have to face and fix.
So is it hard to pick one who could do a better job? Not exactly. As a fund manager in Wall Street had pointed out during American Indecision 2012:
"It's better to have the devil you know than the one you don't."
Scott Young recently finished an astounding feat: he completed all 33 courses in MIT’s fabled computer science curriculum, from Linear Algebra to Theory of Computation, in less than one year. More importantly, he did it all on his own, watching the lectures online and evaluating himself using the actual exams.
That works out to around 1 course every 1.5 weeks.
The unique design is as simple as it is elegant, and utilizes the flexibility of its curved metal support to accurately display weights up to 250 grams, all without the need for electricity or batteries! Way better looking than those mini digital scales!
IntelliJ IDEA Productivity Tips. Part 1
People unfamiliar with IntelliJ IDEA keep always asking me, why it’s better than other products. Today we have decided to make a short overview of some very basic features, that let developers be more productive every day.
In this episod we will show how to use basic shortcuts for test-driven development. The video comes with transcription in subtitles. Check yourself, if you know and use all these basic features.
Attending a TDD workshop. Uncle Bob's Bowling game Kata is used to as TDD demonstration. This totally change my previous view about TDD.
TDD is not just simple as:
1. write a failed test 2. write production code 3. make test pass
or this Red-Green-Refactor pattern. Actually,
• TDD is design in front, a top down not bottom up approach • When you practice TDD, you will guarantee have 100% code test coverage. No one line code more, no one line code less. One line code deleted and your test will fail • Small change in TDD iteration could reduce cycle time • Debugging no more. Practicing TDD you don't really need debug your code. So that's why average developers use Eclipse, good developers use IntelliJ, great developers use VI • Copy & paste becomes a problem in TDD. As we all know average developers code code, good developers copy & paste code, great developers steal code. But TDD reduces duplicated code and prevent copy & paste programming • Believe it or not, TDD can finish coding quicker than traditional write production code first, then write test development cycle
Hitting a wall this week when an application broken in CI due to newly added email notification service.
Basically, after each transaction, an email sent out to notify customer. Unfortunately, may I say fortunately, for a great job done by the infrastructure and security teams, local and CI are blocked to access SMTP server.
Project is in the Spring boat. It's blissful experience that Spring has native email service implementation and support, concisely and quickly to turn it on. To get CI go through, the first hint is to replace real email service with mocked one. It should support unit and functional test. However, it can't touch the existing beautiful code, even a single character.
There are a lot these email / SMTP server solutions: Apache James, jsmtpd … our congenial friend +Dean Budd Deano Balsano tipped Dumbster long time ago. But they all lost touch, out of fashion now. New boy is in town and his name is Subetha SMTP.