Useless Inc.
Tomer Gabel's annoying spot on the 'net
Thursday, October 06, 2005
Development Tidbits: October 6th
Seeing that I don't have anything of value to write per se (with the exception of experiences from the LAN party, and Turkey, and a bunch of reviews, and some development-related rants, and some other stuff) I figure I might as well just toss everything I have here. There's quite a bit of development-related stuff so I've split this into two seperate posts:
Ilya linked me to this
newsgroup discussion
which is something of a revelation.
During the QA cycle for a product I'm working on I got a request to limit the logs for just the last 10 days. I use
log4net
1.2.9 incubation release, which is an absolute pleasure to use (even the documentation is up to snuff these days); however I've found that there is simply
no way to do that
using the stock RollingFileAppender when you roll by date (as opposed to by size). Since I didn't have time to research creating scheduled tasks using the
godawful
Visual Studio 2003 Setup and Deployment Project I just hacked a RollingFileAppender-derivative, only to find that most of its protected methods are not declared virtual - meaning I had to copy the code for the class in its entirety and hack away instead of just inheriting and overriding behavior. If anyone's interested in the hack let me know, but be advised that it's probably not very stable nor particularly elegant.
I was looking for a way to execute an interactive process remotely (which can't be done easily, certainly not with my original research subject, WMI). Apparently the only practical way to do this under Win32 is to use a remote service with administrative privileges; security was a workable issue in this case, so I was left with having to research and write the service and deal with all the bugs, which given the project schedule was not an option. The first obvious option was to use
SysInternals
'
PsExec
tool; this would've been perfect except that PsExec's license forbids redistributing it without a license, which we were very inclined to purchase had there not been easier (and cheaper) options.
BeyondExec
is an equally solid solution that's distributed as freeware and is therefore useful for commercial purposes. Lastly, Jim Wiese has an
interesting article
up at The Code Project which might've saved us a great deal of time had BeyondExec proved irrelevant.
John Wood's
SafeInvoke
is a very elegant solution to the classic GUI thread invocation issue when programming for Windows Forms. He's not the first to utilize .NET Reflection for that purpose, but his solution is extremely elegant as well as performant (since his helper class caches the generated code, a performance hit is incurred only when a delgate is first used, and System.Reflection is supposed to be dramatically faster in the upcoming CLR 2.0). Two thumbs up.
One of my favourite writers, Reymond Chen over at
The Old New Thing
, wrote an insightful little tip on
why you should never use
sleep(0)
. The comments are equally informative. On a side note, I've recently become a very big fan of java and C#'s Monitor synchronization primitive along with its signalling capacity (in java it's part of the
java.lang.Object
API
, which is much more elegant than C#'s
Monitor
class and its static members).
Thursday, October 06, 2005 3:04:30 PM (Jerusalem Standard Time, UTC+02:00)
Comments [0]
-
Development
OpenID
Please login with either your
OpenID
above, or your details below.
Name
E-mail
Home page
Remember Me
Comment (Some html is allowed:
a@href@title, b, blockquote@cite, em, i, strike, strong, sub, super, u
) where the @ means "attribute." For example, you can use <a href="" title=""> or <blockquote cite="Scott">.
Live Comment Preview
Be afraid.
Navigation
Contact me
Twitter
Résumé
Movie reviews
Categories
ant-intellij-tasks
Demos
Development
Compact Framework
Java
Gaming
Movies
Music
Personal
Software
Archive
<
February 2012
>
Sun
Mon
Tue
Wed
Thu
Fri
Sat
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
1
2
3
4
5
6
7
8
9
10
Blogroll
Humour
Bug Bash
The Official QC RSS Feed
Other
GamePolitics.com
Mokuren Dojo - Aikido and Judo
Applications
Breaking Eggs And Making Omelettes
Chromium Blog
Google Chrome Blog
JetBrains News
mozillaZine.org
Windows Live Sync Team Blog
Writer Zone
Development
Blog - Stack Overflow
Coding Horror
ComputerZen.com - Scott Hanselman
Fabulous Adventures In Coding
JIT, NGen, and other Managed Code Generation Stuff
Joel on Software
Matasano Chargen
Phil Factor's Phrenetic Phoughts
Rico Mariani's Performance Tidbits
Signs on the Sand
Stevey's Blog Rants
The Old New Thing
Friends
A Quantum Immortal
Bits Blitz
Bitz Blog
Chips' Illustrated
Comments on Social Style: Bootstrapping #1
Karmona's Pragmatic Blogspot
KimchyBlog
Oldskooler Ramblings
Omri's QA Blog
Oren Ellenbogen's Blog
Rational Relational
Social Style
The Oldskool PC
The Post Mortem
Useless Inc.
Web 0.2
Yuval Raz's front-end development blog
ברוסיה הייתי דוקטור
על ה- Web בישראל
פילה הלג שונאת אנשים
שפויים במחלוקת
תפוז בלוגים - יומנו של סלב לרגע
Technology
AnandTech Article Channel
Blu-ray Reviews - High-Def Digest
Linmagazine (Blogs)
Tom's Hardware Guide: Articles
Wurstcaptures news
העולם על פי אינטל
קולנוע ביתי ואודיו
Sign In
All Content © 2012, Tomer Gabel
Based on the Business theme for dasBlog created by
Christoph De Baene (delarou)