What *was* I thinking?
Wednesday, November 17, 2010
Sunday, November 14, 2010
Fall foliage on the North County Trail
The next day went for a short bike ride. It was my first time to bring the Leica on a bike ride. Actually it was the first (and probably last) bike ride of the year. I saw these boys fishing in the water reservoir.
People seemed to be running and riding bikes in groups. Just had to wait one minute to get a picture of an empty trail.
There are these odd walls made of lose stones just about everywhere here. Typically in the middle of no where… I like to think they are very old markers of land boundaries. But they are so frequent...
The North County Trailway is pretty nice. It's paved the whole way, has railing, benches, maps, and signs.
I love that the trail is basically a railroad line repurposed. The old bridge is still in place and makes a wonderful crossing over the Croton Reservoir.
This is the closest I've been to a major power line. It's funny that the trail at times crosses underneath it and along it.
The shape and randomness of nature...
Passing through Yorktown are these houses. They are all uniform in shape and size. This one though stands out because it resembles a barn.
It's interesting how different these two photos are. And they were made within a fairly short distance of each other.
This was made while in motion. Focusing a rangefinder on a moving object is hard. It's harder when both you and the subject is moving. Harder still when on a bicycle.
Wednesday, April 30, 2008
Are you lonely? Hold a meeting!

http://www.johnniemoore.com/blog/archives/hold-a-meeting.jpg
At some places meetings are like a cancer. Each manager being a different form of that cancer. I often thought a meeting was just a place for everyone to read their BlackBerry's in the same room.
Friday, December 14, 2007
How can I get all the events in iCal that overlap the current time.
I had a simple question. How can I get all the events in iCal that overlap the current time. It's actually dead simple! Just ask the calendar store for the predicate with a start date and end date the same.
NSPredicate *eventsPredicate = [CalCalendarStore eventPredicateWithStartDate:[NSDate date] endDate:[NSDate date] calendars:[[CalCalendarStore defaultCalendarStore] calendars]];
NSArray *calendarEvents = [[CalCalendarStore defaultCalendarStore] eventsWithPredicate:eventsPredicate];
NSArray *calendarEvents = [[CalCalendarStore defaultCalendarStore] eventsWithPredicate:eventsPredicate];
When executed calendarEvents will have all events that have a start date less than or equal to the current date and an end date greater than or equal to the current date.
Sunday, December 02, 2007
SimplerCalendar
I was playing with the sample calendar application SimpleCalendar. But found it has a few problems with the GM version of leopard. The sample calendar application has several bugs and warnings that prevent it from compiling. The SDK targets 10.4u and not 10.5. There is code that calls NSPredicate's -eventPredicateWithStartDate:endDate:calendars: instead the method is a member of CalCalendarStore. A method calling CalCalendarStore's -saveEvent:span:error: didn't include the error param. Even with this, the application is unable to add or remove events.
Apple Bug ID: 5625184
I was not able to figure out the problems with adding and removing events. So I created a similar application using some code from the SimpleCalendar app. It's a lot simpler than SimpleCalendar as it doesn't have a calendar view. You can download the code here. SimplerCalendar
Software Integrity Checksum and Code Signing Vulnerability
Software Integrity Checksum and Code Signing Vulnerability
"We announce two different Win32 executable files with different functionality but identical MD5 hash values. This shows that trust in MD5 as a tool for verifying software integrity, and as a hash function used in code signing, has become questionable."
This is a pretty simple explanation of why MD5 should no longer be completely trusted. The exploit they find is interesting in that they are able to get the same key by adding padding bytes to the original and colliding executables. I can't think of any rational reason why a developer would do this on their own unless someone internally wanted to exploit the software.
Additionally there are these comments on SHA-1.
"Note that also the collision resistance of SHA-1 does not live up to its design criteria anymore, though attacking SHA-1 is still much more difficult than attacking MD5."
Subscribe to:
Comments (Atom)














