There are at least two Star Rating components for Facebook React that can be used with the brilliant Reagent.I found these to be too complex and neigh impossible to integrate with Reagent so I came up with a simple solution like so:
(ns my-star-rating-control
(:require [reagent.core :as reagent :refer [atom]])
)
(defonce star-rating-info
(atom {
:rating-temp 0
:rating 0
:clicked false
}))
(defn get-attr [x]
(-> x .-target (.getAttribute "data-index...

If you broke out your JavaScript debugger after a missing Google Maps Api weather layer, panoramio layer or cloud layer, you can close it. These layers have been deprecated and were removed on June 4th, 2015.Googling for this issue is hopeless as it leads to redirects to the main Google Maps Api Page. Disappointing search results from Google for once....

The original instructions on the Hippo site are somewhat outdated. Moreover, the linked blog post is currently down but archive.org still has a copy:http://web.archive.org/web/20101026204317/http://gotext.org/people/bluesman/en/2009/10/english-configuring-hippo-7-for-postgresql-and-tomcat/Most of the instructions are still relevant but it's probably unnecessary to install HST 2, so the first step can be skipped.The instructions starting at ?Go to _your-project-dir/cms/src/main/webapp/WEB-INF?? _...

Formatting dates in JavaScript can be tricky, even getting the name of the month. It's possible to use the clunky $.datepicker.formatDate (); from jquery.ui, but in Clojurescript we have the Google Clojure library at our disposal. Its goog.i18n.DateTimeFormat class has a few useful functions that can be applied like so:
(ns netsupply.client.calendars
(:require
[goog.i18n.DateTimeFormat :as dtf]
))
(def format-map
(let [f goog.i18n.DateTimeFormat.Format]
{:FULL_DATE (.-FULL_DATE f)
:FU...

Needed a less css compiler who watches changes to a main .less file as well as all those include with an @import statement. ##One could just use an old version of the less gem that still supported the ?watch option, i.e. the 1.x versions. However, the gem won't track included/imported files, the obsolete more plugin was required for this in Ruby on Rails. Peeking over the platform wall, the dotless compiler does all this well under Windows and it's very fast. However, running this app with mono ...

Here's the correct setup, including the remote build configuration:http://blog.morroni.com/2011/06/30/debugging-scala-projects-in-intellij/comment-page-1/You may have to restart the IDE to get the debugger to stop when running from the SBT console. Yes, you can actually run your tests on the SBT console that comes with the SBT plugin for IntelliJ (test-only etc.), set breakpoints on your test code, and the debugger will open when it hits the break points. This is really cool....

To install a legacy version of RubyGems, you will need some version installed first, so use aptitude, yum, zypper etc:
apt-get install rubygems
Then revert to an older version (for example 1.3.6):
gem install rubygems-update -v=1.3.6
update_rubygems
Check your version with
gem env...

To be able to use NHibernate ? and as a general purpose and learning exercise ? I wanted to write a script that adds a version column of type integer to all tables in the database, unless such column exists (in Rails the schema_migrations table has a version column for example). In SQL Server we have the ?secret? sproc sp_MSforeachtable for this purpose, but how to bend the stricter syntax of plpgslq to achieve something similar? After a number of hours of trial and error, here's is a script th...

It's a one-liner, but info isn't easy to find (as usual with soap4r).When you generate your local driver with for example
wsdl2ruby.rb --wsdl MyService.wsdl --classdef MyService --type client --force
and you instantiate your proxy driver like so
ms = MyService.new
ms.wiredump_dev = STDERR
you simply add
ms.streamhandler.accept_encoding_gzip = true
That's all. No need for custom headers etc.And: zlib (compression library used by soap4r) is built into Ruby since version 1.8. No need for any g...

Yes, there is register_javascript_include_default but it will only** append** to your sources.To prepend (I?ll use this to have the excellent JS.Class libraries loaded before anything else), proceed like so:While in Rails 3, you can set
in your application.rb file,in Rails 2.3.x you create an initializer (e.g. config/initializers/my_js_defaults.rb) and reset the JAVASCRIPT_DEFAULT_SOURCES constant as so:
module ActionView::Helpers::AssetTagHelper
JAVASCRIPT_DEFAULT_SOURCES = (remove_const
:J...

After installing, trying and discarding typus, casein as well as ActiveScaffold, I ended up with one of the best plugins I've seen, and certainly the best for utterly effortless admin panel setup, admin_data.It is
super-quick to install (Rails 3 is the gem, Rails 2 is a plugin branch, no digging through trees on github),
unintrusive (all code is in vendor/admin_data where it belongs),
requires no set-up,
correctly (!) gets all model information from your model definitions (primary_key...

Note: This all concerns Rails 2.3.x and recent versions of AuthLogicTesting AuthLogic with RSpec is still a puzzle with several parts that can be difficult to fit together. Very helpful is a sample project on github that demonstrates several testing options with RSpec.A series of mock helper methods that you can stuff in your spec_helper.rb can ease testing, letting you call
login
or
current_user
anywhere in your specs.If you get errors such as
Mock "UserSession_1002" received unexpected mes...

The MongoDB replica set tutorial should be easy enough to implement on a Windows (server) machine, but how do we run our replica set members as MongoDB windows services, having them start up automatically or manage them with the Windows SCM (Service Control Manager)?Suggestions to seed multiple hosts in one command didn't work for me and several other options did not bear much fruit. Especially running mongod ?install with the ?serverName option did not work out as the new service instance will...

**Update December 4th 2010: **Linode made it four outages in 121/2 days. Now they?re changing the hardware but this is not an acceptable level of reliability.Update December 3rd 2010: Linode made it **three outages in 12 days.** Time to look for another hosting company.Linode's Fremont facility has suffered the second outage in three days. On Sunday all my sites were down for about six hours, the longest outage I have seen in almost fourteen years of hosting usage. And now it's only Tuesday mo...

To host your private gems you have several options. The cheapest and most scalable solution will likely be to run your own gitosis server. Then you build your gems as described in this railscast and push them up to your gitosis repo. But how to deploy and install these gems when the gem is updated?Installing a gem from Git involves four steps:
Clone the Git repository.
Change to the new directory.
Build the gem.
Install the gem.
#One way is to implement a Git post-receive hook. This hoo...

Update (Aug. 28, 2011): You may want to check out tiny_tds which obviates many of the below settings and gives you a richer and more scalable connection than ODBC. If you get
Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier.
when connecting to SQL Server from Linux via FreeTDS, you don't set the FreeTDS version correctly. To use SQL Server from Rails, I usually just create shared DSNs in /etc/odbc.ini...

Just a reminder: To get a the full backtrace when running RSpec, either use the -b option,
script/spec -b /path/to/spec.rb
or add
--backtrace
to your spec.opts. Here are the other options for either the opts file or the command line....

Just for the record, as this can be hard go google. If you need old and legacy versions of Netbeans, you can find them through this page:http://www.netbeans.info/downloads/dev.phpBesides all releases, it also gets you to all build types including nightly, daily, milestone etc., acting as a way-back machine for Netbeans developers and users....

Having tried Bilbo/Blogilo for a while now, I found it to be a fine editor but a bit too intrusive in altering the HTML code I created in code view when I switched back to Bilbo's WYSIWYG view. So I tried good old BlogJet again and found there's a (free) upgrade to the new version 2.5 (currently 2.5.0.15), among other goodies making it Unicode compatible and letting you create categories from within the editor (only for Wordpress blogs), still a rare feature outside of Live Writer. To install it...

Having watched Evan Sharp?s ?Comp to Code? talk at Mix 2010 video (check out the other Mix videos also, most are excellent), searching the web for the CSS specificity algorithm table turned up nothing as simple as his pseudo-decimal algorithm. So I reproduced the table from the talk verbatim here for reference. As you can see, id selector elements will dramatically increase the specificity of the selector, while class selector elements are an order of magitude less specific:CSS specificity algor...

A great overview of the current political situation in Thailand and its roots, from long term on-the-ground experience in Thailand and conversations with Thais from all walks of life, which I think is essential. I agree on most counts, especially the view of Abhisit and his (in)ability to bring about reconciliation, and I also hope for a good outcome over the next few years. However, I?m slightly more sceptical that the outcome can be peaceful....

This error can be caused by an outdated version of the globalize2 plugin, so try
script/plugin remove globalize2
and
script/plugin install git://github.com/joshmh/globalize2.git
Hope it helps.#Nico: Thanks for This! Saved me quite some debugging...Matte: Thanks! you saved me!...

Getting RSpec and Webrat to cooperate has gotten a bit easier recently, so make sure you have all the latest versions of the webrat, rspec and rspec-rails gems installed. Some quirks remain which might trip you up coming from TestUnit. For example if you
cd spec/integration
and
spec ./user_integration_spec.rb
or
ruby ./user_integration_spec.rb
you might get
undefined method `visit (?)
while a similar procedure would run fine in test/integration with TestUnitBut with RSpec, when you run
spec ...

Having used Sven Fuchs' routing_filter to localize routes (see here for alternative solutions), I now moved my authentication to devise from authlogic. This broke my localized routes with the default configuration, so for example
http://localhost:3000/**en**/users/sign_in
failed with an
ActionController::UnknownAction
error.Fixing it was super-easy, simply open your config/initializers/devise.rb file and uncomment (currently line 81)
config.use_default_scope = true
and it should work like bef...

Storing images in a noSQL database might be a good approach for many applications, and it can alleviate many replication and scalability issues when it comes to images and by extension other binary files.Riak can store any kind of data, including binary. Whatever you can turn into an Erlang tuple can be stored, without the 4MB document size limitation of MongoDB or the "attachment"-model of CouchDB.First, ripple has to be installed, the "official" Ruby driver for Riak:
sudo gem install ripple
T...

Argh, googling "create couchdb" for what seemed like an hour only returned largely irrelevant documents and "technical overviews" on the couchdb home page. Anyway, once you have couchdb running, point your browser to the web interface at
http://localhost:5984/_utils/
And at the top you'll see "Create Database..." Definitely bookmark this page....

Update March 7, 2011: The rails-footnotes gem/plugin as of version 3.6.7 finally works with Rails 3 and Rails > 2.3.6, meaning the project has been revived in a great way. One less reason for shirking the upgrade to Rails 3 and newer versions of rails 2.3.Few gems or plugins speed up Rails development like rails-footnotes by José Valim and others. Especially useful is its ability to open files directly in the a text editor from Firefox. Out of the box, this gem works with Textmate, but it's qui...

If you get
! [rejected] gh-pages -> gh-pages (non-fast forward)
when following the instructions to create a github project page, you might just try to delete the gh-pages branch
git push origin :gh-pages
and then push the gh-pages branch again
git push origin gh-pages
Hope it helps.#Emaad Manzoor: Thanks for this! Really needed it....

Here in Thailand I currently get the page below at http://www.rubyonrails.org and http://www.rubyonrails.com. The domain name registration seems to be ok, but there was an update yesterday (April 20th). And it's a garish parking page that in the colors of Django?! Is it some regional DNS screw-up? Am I mistyping Ruby?UpdateJust checked via US-based proxy, the issue is confirmed, it's not a regional Asian DNS snafu.Update 2The same happened last year and it looks like it happens every year around...

So the most popular search term starting with "delete" seems to be "delete facebook account". In the face of recent changes to "fan" and profile settings that "deepen the marketing graph", it could become even more popular. Wonder what all the buzz is about......

As JavaScript is the language I'm planning to learn more in-depth this year, primarily to approach the latest map-reduce API's of the latests NoSQL databases (CouchDB, riak etc.), I've recently made good progress thanks to two invaluable resources:#First, Douglas Crockford's lecture videos at the YUI theater. He has created three separate series, The JavaScript Programming language, Advanced JavaScript. and more recently, Crockford on JavaScript, all available on the same page in the YUI theater...

Things are moving fast in the Rails/Ruby world with the imminent releases of Ruby 1.9.2 and Rails 3.An essential tool for a smooth transition is RVM by Wayne Seguin (Where can i vote for this guy as Ruby Hero? Ah, it's here.) In the first Rails 3 Railscast RVM sounds more like an afterthought and only necessary if you don't have Ruby 1.8.7+ installed, but it's advisable to not even try the migration to Rails 3 without installing RVM and a dedicated version of Ruby (can be the same version as you...

The Google search led me down the wrong path, so here is the gist of it:Install chm2pdf, which is in the repositories starting with Ubuntu 8.04
sudo apt-get install chm2pdf
Get help with
chm2pdf --help
Convert with for example (all three ?dashes? are double dashes half eaten by Wordpress):
chm2pdf --continuous --no-links --quiet input_file.chm
The input file name should not contain any special characters or spaces, otherwise you might get all kinds of "File not found" errors, regarding for ex...

Impressed by fellow Chiang Mai expat's site gt-rider.com I was looking for an gallery/slideshow javascript similar to JonDesign's SmoothGallery (jdgallery), but working with jQuery rather than mootols. jdgallery combines slideshow, image title overlay and many different transitions in an aesthetically appealing package. The search led me to the conclusion that the transitions (slideshow functionality) should be handled by a different script than the actual image display. For the former there is ...

The messages "Folder org already exists in ..." and "Too many open files" when using Netbeans are likely related. The underlying error might be that Linux runs out of file descriptors, which can happen rather quickly when you open many projects at once. Here's the solution.The file descriptors can be set at the system level and at the shell level:Check how many your system allows:
cat /proc/sys/fs/file-max
This value can be set to a high number, probably to several 100k without major issues. For...

Just a little tip, as the syntax of less (less css) is so similar to css, just add a new file type in Netbeans > Tools > Options > Miscellaneous > Files like so: ![](/wordpress/wp-content/uploads/2009/11/netbeans-less.png) Update: I found less editing works a lot better with Netbeans 6.5.1 than with 6.8. The code formatting of 6.8 is too picky and will essentially not format less as it's not proper css. No such problems with Netbeans 6.5.1 which I also use on Windows as a vastly superior less an...

Just a thought: Linux is to computing what backpacking is to travel: Perhaps a little more involved to get started, but infinitely more satisfying, richer, more real and ?down to the metal?, and a much more rewarding experience day after day. And the bliss of absolute freedom.Mac OS X: All-inclusive pampering in some pseudo-hip resort with some ?culturally aware? excursions thrown in.Windows: Package holiday with the Joneses.?Nuff said....

Rails I18n, globalize2 and Sven Fuchs? routing_filter provide a nigh complete globalization solution for Rails, especially after the splendid new localized view support in Rails 2.3.So I was looking for a way to display small flags found at famfamfam and link them to the ?localized? versions of the current uri in all pages of the application, so that for example/widget/8/editwould become/de/widget/8/editand /would become/de/Having said routing_filter installed, I created this little helper metho...

Complex forms were the focus of Railscasts 73, 74 and 75 and the latter episode outlined the rather involved way to get a single nested model to work correctly with form elements generated on the client via javascript. Nested model forms built into Rails became the most requested feature and release 2.3 finally delivered with the** accepts_nested_attributes_for function**. Still, challenges remained, especially when trying to generate form elements on the client. A suggested solution was an alte...

Certain issues with screen brightness adjustment in Ubuntu for a variety Intel graphics chips (945GM, GL40) which will be fixed in the upcoming Ubuntu Karmic. For now, if you have problems getting your screen brightness adjusted via fn keys (I had this issue on a new Acer notebook), you might try this command:
xrandr --output LVDS --set BACKLIGHT_CONTROL combination
The screen will flicker when you run this but your function keys might just start working. You might add this command to your start...

Having long used jRails in place of of scriptaculous/prototype with my Rails projects, I found that the latter won?t work with the original auto_complete plugin for Rails. So I tried a few solutions such as this which uses the auto_complete_jquery plugin, as well as more involved solutions such as this and this one which uses HAML. However, I didn?t want to write javascript and also have all the helpers of the original plugin, to implement the solution presented in Railscast 102, with a RESTful...

Having recently dug into css-frameworks, I?ve found Dirk Jesse?s YAML to be in a league of its own. While I think that support for IE5.5 could be dropped, YAML makes many right choices regarding abstraction and accommodating browser quirks.And while YAML has two basic navigation bars out of the box (named sliding-door and shiny-buttons), I wanted a drop down menu on hover over the navigation items, with as much CSS and as little JavaScript as possible.After some searching I found the Drop-Down-M...

Noise of different colors can be generated on a Linux box with these commands (Ubuntu, Debian etc.):
sudo apt-get install soxplay -n synth 60:00 whitenoise
The latter command will generate white noise for 60 minutes. Also works with brown and pink.#Mikaela Mendoza: White noise machine are clinically proven solutions for looking for effective sleep aids.dmitry: Awesome! I just looking for brownnoise. Thanks you very much.GratefulMan: Thanks! This is certainly less resource intensive than flashpla...

The basic task is to create a frontend for the encoding titans ffmpeg and mencoder and on Windows there?s the (otherwise) super Super. If if already arrived on Linux you should check out WinFF by Matt Weatherford (Big Matt). Easy-to-use, fast and effiecient describe this neat little program....

If you get errors such as
fatal: Out of memory, malloc failederror: pack-objects died with strange errorerror: failed to push some refs to ?git@myserver.com:foo.git?
when running
git push
first, upgrade git to the latest version on both ends, then check if
git repack
still works. If not, you might have a local issue.If repack still works, your remote server (the server you push to) might actually run out of memory, which can easily happen with for example smallish VPS slices. So, just increas...

Mozilla Thunderbird does not have a built-in option to right-click and forward multiple messages without sending them as attachments of a single message or sending each message inline after entering the address manually. While this makes sense as it minimizes server resources and web traffic, sometimes it is more convenient for sender to send (bounce) multiple messages to the same recipient in one action, giving the reader single messages in her inbox. Luckily there?s the Mail Redirect Add-on t...

This code returns all records of your model sorted by translated field name when using Globalize2 :
app/models/widget.rb def self.all_sorted Widget.find(:all, :joins => :globalize_translations, :conditions => ['locale = ?', I18n.locale]).sort_by(&:name) end
As outlined it this post, :joins => :globalize_translations is mandatory. The unary ampersand operator converts a Proc to a block, so in this case sort_by(&:name) is ?shorthand? for
sort {|x,y| x.name <=> y.name}
Ruby sometimes feels li...

If you get
Loading development environment (Rails 2.3.2)/usr/local/lib/ruby/1.8/irb/completion.rb:10:in require': no such file to load -- readline (LoadError)
from /usr/local/lib/ruby/1.8/irb/completion.rb:10
from /usr/local/lib/ruby/1.8/irb/init.rb:252:inrequire' from /usr/local/lib/ruby/1.8/irb/init.rb:252:in load_modules'
from /usr/local/lib/ruby/1.8/irb/init.rb:250:ineach' from /usr/local/lib/ruby/1.8/irb/init.rb:250:in load_modules'
fro...

When using the Renew Option in IIS Manager>Server Certificates, a longish CSR (Certificate Signing Request) is created but when submitting it to your certificate authority it is rejected, as the CSR is invalid. Godaddy might give you a message like "Unable to extract CSR information", so you this tool to check your CSR and the invalid parts are underlined in red. It seems IIS7 tries to generate a key with a length of 4096 bits even when renewing a 1024 bit certificate. This issue is likely a bug...

Followed this great advice on installing RMagick and ImageMagick on CentOS, and at
got
checking whether build environment is sane... configure: error: newly created file is older than distributed files!Check your system clock
Well, no problem with that clock but the solution is to touch the top-level files of your ImageMagick folder, so the above becomes
Update: Of course it was the clock. Shouldn?t have gotten one of those cheap old dedicated machines, but I want to compare it with VPS anywa...

Update: Two hours after this post I discovered that the system clock on the remote server, just recently booked from my reliable hosting company, was off by about eight hours. On a server set up by them just a few days ago. Anyway, the clock issue might be the actual underlying reason for the failed authentication. So check your clock and sync it. **I guess the name of the lone horseman is Crystaltech.** Duh.Original post:Ok, the title may be a bit harsh, but that?s how I felt at times over the...

Note: this article uses jQuery, Ruby on Rails and CSS. It might be useful for other combinations.You have a list of products and don?t want to force users to search for the link to the details page. Rather, give him some hover effect for each list item and let him click anywhere on the item. The list here is displayed as an unordered list (UL), but a similar technique should work with table rows (TR), divs or other block elements.Several techniques are applied here:Step 1: Turn the cursor into a...

If you have trouble getting simple_captcha to work with your Rails application, i.e. you enter the correct captcha string but still get the
?Secret Code did not match with the Image?
or similar error, look for this error in your log:
Can?t mass-assign these protected attributes: captcha_key, captcha.
To solve this issue, you?ll have to add
attr_accessible :captcha, :captcha_key
to your model. Here?s how to test simple_captcha....

In script console the app object exposes ActionController::Integration::Session which contains all your routes, so you can go:
app.widgets_path
etc. No need (comment) to include ActionController::UrlWriterBut to use your routes in the model, you wouldn?t use an instance of **ActionController::Integration::Session**, no, don?t, it?s a terrible hack, dirty and immoral, bordering on evil, MVC abused and perverted. Then again, you never know?...

Here?s the solution:In environment.rb, put this
I18n.load_path = Dir.glob("#{RAILS_ROOT}/locales/**/*.{rb,yml}")I18n.default_locale = 'en'I18n.reload!
This was the only place I could get the I18n.reload! command to help with this issue....

Powerful find and replace with regular expressions should be the hallmark of every IDE worth its mettle. MS Visual Studio does it so-so, but lo and behold, Netbeans (at least in version 6.1) is even worse.So I wanted to put foo at the beginning of every line in a text, which calls for a regex like:
^.*
and replace like:
foo $0
However, Netbeans only ever replaces the first match in a text, over and over again. It also hangs up easily in the process.As with many a Netbeans quirk, it?s Quanta Plus...

Table avoidance is raging on in contemporary HTML design and nobody wan?t to be caught with an unnecessary table on their pages. This may go to far or not, but to display data in multiple columns without resorting to a table you can proceed like this:
1
2
3
4
5
6
Then make the ul 100% wide and the list items (li) 50% or 33% or 25% or whatever and float them left (fixed values in pixels or ems work as well):
.lst
{width:100%}
.lst li
{width:25%;float:left;}
Her...

Is there anything more painful than manually populating your model with sample data? The thought alone makes most developers? skin scrawl because we write code to do the work for us and abhor manually entering fugacious data.As always, first things first, watch the relevant Railscast, which will introduce you to populator and faker, both great tools you will soon find indispensable. And here?s a little rake task to populate your model with images, useful to see how it looks with product thumbnai...

Update: Since Ubuntu 8.10 "Intrepid Ibex" Hal has superseded xserver/xorg.conf as the preferred means to configure input devices. This post has the settings for hal, and they work just like the old xorg.settings outlined in the original post. Migration to hal will likely bring benefits for most, such as plug-and-play hot plugging. You might want to check out this writeup before taking the plunge.Original post (applies to xserver/xorg.conf < Ubuntu 8.10):As you know I consider the Logitech Marbl...

I read this book a couple of months ago but wanted to get a review out before year end. Why this book review, the first on this blog? Because I find The Art of Rails to be the best book on Rails for developers moving from a beginner to a more advanced level, and I want to wholeheartedly recommend it.Once you?re done with the ?big two? (Agile Dev with Rails and The Rails Way) you will have nice first set of ?hows? (The Rails Way is supposed to to be used as a developer?s reference book). But you?...

Excerpted from:http://whytheluckystiff.net/articles/seeingMetaclassesClearly.htmlDisclaimer: Enjoy with a huge grain of chunky bacon...Objects (instances of classes) DO NOT STORE methods, objects only store VARIABLES, instance variables.METHODS are stored IN THE CLASS. In this sense "a class is an object" is not quite true, objects (instances) and classes (the method store) are DIFFERENT! However, to the PROGRAMMER a class is an object after all, because he can store variables in a class. Duh.Wh...

Localizing and globalizing Rails apps has gotten much easier with version 2.2. Add model translations with Globalize2 and you?re on your way. But where to store the locale? The session is a big no no, so it would be more elegant to just prepend them to the path and adjust the routes accordingly:/widgets//en/widgets//de/widgets/Rails routing is arcane and difficult, so hacking away at it is like stumbling into a mine field. Especially difficult is the preservation of url_helpers, so Sven Fuchs d...

With Gimp for raster graphics and Inkcape for vector drawings, Linux is a graphics platform whose speed, stability and functionality and last but not least lack of clutter will suprise even jaded Photoshop and Illustrator users. However, there were until recently a few quirks in the data exchange between the two applications. Inkscape can export to the Gimp default file format XCF since version 0.44, but the saved files could throw the GIMP XCF image plug-In could not open imageerror upon open...

To delete all files in the current directory, you run the extremely dangerous **rm * **and **rm -rf ***to recursively remove all files and directories.However, the command has a 128K buffer limitation in the Linux Kernel. As a workaround you can pipe each file to rm like so:
**find . -name '*' | xargs rm**
See this article for details....

As the Economist?s Buttonwood points out, when everyone heads for the exit, all get squeezed. This defeats all hedging strategies. The late eighties and nineties brought us the end of a formulaic approach to politics (Socialism vs. Capitalism); the current decade follows up with the end of a formulaic approach to investing (Long vs. Short, Stocks vs. Bonds etc.). A brilliant comment by Hyun-U Sohn sums it up:
The article betrays the view of correlations and other statistics as describing laws of...

In Netbeans there currently (Version 6.1) is no built-in option to save a windows layout, you can only do a ?Reset Windows? (in the Window menu) to get back to the factory layout.I?ve been looking for a solution to get a cough Visual Studio cough like layout (all navigation on the right of the code window) and found a great plugin called Perspective (click this link twice as for some reason on the first click it will give you the plugin home page) that lets you save a layout and switch easily b...

If you?re using the Better Nested Set plugin in your 2.1 Rails app and get an error such as
ArgumentError: wrong number of arguments (3 for 2) from /usr/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:2479:in `attributes_with_quotes'
upon saving your model or upon calling update_attributes, you have two options:
Move to Awesome Nested Set, a drop-in replacement for BNS which has some additional features, among them STI (Single Table Inheritance).
Apply this patch...

You?ve surely read this article on the topic, which describes a long (and arduous) process to set up dual monitors on an Ubuntu system with a lowly graphics chip such as the Intel 945GM. However, there is a much easier option which is outlined here: For my system, all I had to was add the bold line in /etc/X11/xorg.conf
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Monitor "Generic...

The old post has become obsolete and I removed it. Today it's a bit more straightforward and easier to get a English-Thai-English dictionary installed on Linux (and Windows). The original Nectec portal (registration is now required) referenced in the old post is here:
http://lexitron.nectec.or.th/2009_1/index_en.php?q=common_manager/download
However, it's probably best to install StarDict from a repo manager for your system. Then download the dictionary files from NecTec, unzip and put them int...

It's an every day task: Select the ten top-selling widgets from each category. The obvious approach is to combine TOP and GROUP BY, which usually comes with some annoying "Column 'xxx' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause" errors you try to work around. The culprit is a misunderstanding of the GROUP BY clause. It will NOT give you multiple result sets, but rather ONE result set with a single row for each group. From Book...

Accessing files located on a Windows Active Directory network share from your Linux machine is easy via Samba (and probably NFS, which I've never tried). However, trying to use Open Office applications such as Writer or Calc to open these files will likely fail. OO apps will start up and then die silently. That's why it's usually necessary to mount the shared drive with a command such as this: sudo mkdir /media/mynetworkserverc sudo mount -t cifs //mynetworkserver/c /media/mynetworkserverc -o u...

It's hard to google for this info as most results will be torrents of some kind, but the solution is obvious: Simply add a mime type (application/x-bittorrent) for torrent files (.torrent):That's it. Hope it helps....

The entire relocation process is described in this TechNet article: http://207.46.196.114/WindowsServer/en/library/af6646aa-2360-46e4-81ca-d51707bf01eb1033.mspx?mfr=true, the core for moving to local drives: http://207.46.196.114/WindowsServer/en/library/af6646aa-2360-46e4-81ca-d51707bf01eb1033.mspx?mfr=true and for network drives: http://technet2.microsoft.com/WindowsServer/en/library/dd498633-5d65-4a14-b68d-edcb85fada651033.mspxOnce you have completed the preparation of your target volumes and...

Update: The below ?solution? should not be considered as it creates invalid URLs. All ampersands should be encoded as "%26", see Bill's comments from Nov. 11, 2010. This was just meant as a quick-fix-short-term-workaround as these URLs were supported in IIS 6. There's a reason why IIS 7 and above don't support them.With the arrival of ASP.NET MVC and the complementary IIS7 file-extension-less request pipeline it's finally possible to turn ugly "classic ASP.NET" query string URLs into pretty and ...

I've posted about this nonsensical issue before. As the source link quoted in that post is now dead and the issue continues with the latest version of WLinstaller.exe, here's the msi source for direct download. It installs fine on Windows Server 2008 (x64) and Windows Server 2003 (32 bit x86). Not sure if it installs on XP Professional x64 as I haven't tried it, it should though.And while we're at it, here are the other files (msi sources):Windows Live Mail for Windows Server and Windows XP Prof...

Once you've followed these instructions to install PHP hosted on IIS7 using FastCGI (there's also a video by Scott Hanselman), you'll probably want to install MySQL and make it work with PHP. However, with your php.ini in its current state you'll likely get an error message when you start a MySQL-based app, such as Wordpress:Your PHP installation appears to be missing the MySQL which is required for WordPress.There's a lot of information out there to fix this on Windows, and much advice involves...

Something wasn't right. Over the past few years computer mice had been getting better and better in terms of tech: Laser replaced optical replaced the mechanical ball, resolution went from a few hundred dpi to a few thousand, and wireless options are getting faster (Bluetooth) and more reliable at ever larger distances from the machine. Still, I found all the gadgets and mice I tried ended up in the drawer sooner rather than later, making me go back to the notebook's built-in touchpad that some ...

If Windows Task manager shows excessive resource usage (CPU or memory, mostly) for an IIS 7 worker process (w3wp.exe), it's helpful to identify which of your application pools consumes the resources. I haven't found a way to accomplish this in IIS Manager so I proceeded like so: At the command prompt: net start WAS Note: WAS is the Windows Process Activation Service (btw, pretty silly service name, as it's nigh impossible to google for WAS). Run appcmd list wp: **C:\Windows\system32>%windir%/sys...

With the default configuration of IIS 7 you will not be able to serve the .wdp images requested by the HD View plugin in the clients browser. The user will get the "Could not create scene from file http://{your source path}/l_{l}/c_{c}/tile_{r}.wdp>. hr=0x..." error message displayed instead of the HD View. As found in this discussion, it's necessary to enable the image/vnd.ms-photo MIME type on the web server, which on IIS 7 is in done IIS Manager >> MIME Types:Simply add a MIME Type for wdp an...

Like its predecessors, IIS7 does not support wildcard (catch-all) binding or wildcards for host names, see this discussion for the state of things and how the much requested feature didn't make it into the II7 release version as it stands. So, if you try to add *.yourdomain.com as a host name in IIS 7 you will get this warning:There is only one "workaround" at the web server level and it requires a dedicated IP address for the particular site: Set up a wildcard host record in DNS: right-click th...

It may be surprising for some, but the .NET framework has capitalization built in:**using System.Globalization;class Test{public static void Main (){string s =CultureInfo.CurrentCulture.TextInfo.ToTitleCase ("i want this capitalized or capitalised if possible.");Console.WriteLine (s);}}**It's even easier with VB.NET:StrConv(yourTextvalue, VbStrConv.ProperCase)Still not as elegant as capitalize(str) in Rails ActiveSupport, but the approach via globalize might be more maintainable in the long run....

You might also get a related error when building your ASP.NET project with a Linq to SQL class:Build failed due to validation errors in myfile.dbml. Open the file and resolve the issues in the Error List, then try rebuilding the project.This issue can be resolved by **removing all dots **from the connection string key in web.config, see here, so becomes Then the build should succeed. If you then **reset the connection string key **to the one with dots and **it will...

Microsoft's HD View caused quite a stir last year, and rightly so. The MS Research team solved several issues that have hampered the wider adoption of panoramic imagery in a single and mature offering. The wide angle projection issues of QuickTime VR and other viewers were solved with an ingenious adaptive projection algorithm. Also, tone mapping correction (haze reduction) was introduced to deliver a truly immersive experience that invites exploration of gigapixel images and is also great for w...

Builtwith.com let's you find out what server technology and tools were used to build a web site. Bookmark this link as it's hard to find later by googling for "what's" etc. which will take you to the what's service where you learn only about the server tech stack installed. Btw, builtwith.com was built with ASP.NET;)...

When installing a Windows Service Pack, you may get an "Access is denied" message and the installation rolls back. The issue is most likely due to incorrect registry permissions. You should first try Microsoft's advice.However, if all this fails for you, you can try the following, as found here (kudos to MVP Jim Byrd):
Download and install SubInACL:http://www.microsoft.com/downloads/details.aspx?FamilyID=e8ba3e56-d8fe-4a91-93cf-ed6985e3927b&displaylang=enEven if you have the Windows Resource ...

If your screen brightness erratically resets itself every few minutes, try the following (found here):1. Press ALT + F2 to open the run dialog.2. Type gconf-editor and press ENTER, to open the gnome "registry".3. Navigate to APPS -> GNOME-POWER-MANAGER -> BACKLIGHT4. Uncheck the item named enable5. Close the window.#desatascos de tuberias en murcia: I get pleasure from, cause I found exactly what I was having a look for. You've ended my 4 day lengthy hunt! God Bless you man. Have a nice day. Bye...

del.icio.us Tags: PostgreSQL 8.3, Linux, Install_Update: The below instructions are outdated as it's now much easier and safer to install a now stable backport package for PostgreSQL-8.3. To learn more about backports, visit __this page__ and enable the backport repository for your Linux distribution. You can then install via the package manager or apt-get. Or just try_ ** sudo apt-get -t sarge-backports install postgresql-8.3** The latest version of PostgreSQL can't yet be installed on Ubuntu (...

RSpec is the king of the BDD hill when it comes to Rails, and the learning curve is quite steep. For Windows developers hooked on CHM documentation, it's very easy to generate RSpec CHM files by running the commandrdoc -f chm -o chm_folder rspec*in the /vendor/pluginsdirectory of your RoR project where you have installed the RSpec and RSpec on Rails plugins using
ruby script/plugin install http://rspec.rubyforge.org/svn/tags/CURRENT/rspec
ruby script/plugin install http://rspec.rubyforge.org/svn...

Developers have been experimenting with darker color schemes for Visual Studio, aiming to port their beloved Textmate or Vim environment to other IDEs including VS. The Textmate Vibrant Ink theme was ported for Visual Studio and recently improved. Zenburn was ported from Vim to Visual Studio. Collections of other dark color themes can be found here, here, and here. Some like them, some don't. I was in the latter group until recently. That was when I came across the Aloha scheme for Netbeans 6, w...

If you have trouble getting Autotest to run on Windows with **expand_path': couldn't find HOME environment -- expanding~/.autotest' (ArgumentError) messages and the like,** this post might help you.So the steps are:
gem install zentest
Download and install diffutils from http://gnuwin32.sourceforge.net/packages/diffutils.htm
Put the installation directory of diff.exe into your PATH in Control Panel>System>Advanced>Environment Variables
Then "Autotestify" your Rails app by running in the a...

Windows Live programs (Live Writer, Live Messenger, Live Mail, Live Toolbar, Live Photo Gallery, Live Sign-in Assistant) cannot be installed on Windows Server 2003 using the default installer (WLInstaller.exe). When you run the installer , the following message pops up: There was a famous workaround for the Beta versions, and something similar will work for the final version:Step 1:Install the Windows Live Writer programs on a supported system (XP Service Pack 2, Windows Vista). You may need a...

Update April 21, 2008: Delynn Berry now has a new CHM file up for Rails version 2.0.2 with a much better index and fewer broken links than what I was able to create. Get it ****here_****._CHM (compiled HTML Help) is arguably one of the better Microsoft inventions and generating these files from Ruby on Rails documentation is should be easy using Rdoc.A general article on the different ways of generating Rails offline documentation is here. The Rdoc approach is described in this article:http://wi...

Regular Expressions are an extremely powerful tool for parsing and querying textual data; so using them in a database environment looks like a good match. But DBMS vendors have been rather slow building RegEx functionality into their offerings. Oracle has it since 10g and some open source databases also have a head start.Microsoft obviously put the emphasis on XML/XPath since SQL Server 2000, and regular expression support is not on the horizon, even for SQL Server 2008. A MSDN article gives you...

Errors like /opt/software/ruby/gems/rails-1.2.5/lib/commands/servers/mongrel.rb:15: warning: already initialized constant OPTIONS/opt/software/ruby/gems/rails-1.2.5/lib/commands/servers/mongrel.rb:18: undefined method `options' for []:Array (NoMethodError)when starting Mongrel or Webrick with ruby script/server are likely plugin related. You might be tempted to fire up the debugger, especially since the newly released Netbeans IDE makes debugging Rails apps almost enjoyable. However, the debugge...

The Queenslanders are storming ahead with today's 0.9 release of Ruby.NET, now an open source community project. The new features include designer support of Windows Forms (be sure to check out this walkthrough). You might want to compare another Windows Forms approach with IronRuby and Ruby in Steel. If you run into error such as The element 'Target' in namespace 'http://schemas.microsoft.com/developer/msbuild/2003' has invalid child element 'RubyCompileTask' in namespace 'http://schemas.micros...

My Microsoft Annoyance du Jour: Trying to download Live Writer Beta 3 from any computer located in Thailand will bring up a Thai download screen. While I have problem with the Thai page as such I'm not too keen on having the Thai version of the program with all dialogs and help in Thai but this is the only choice: There is no option to choose another language, and every browser I tested (Opera, IE6, Firefox 1.5) will not let me download the US-English version regardless of browser language s...

If you get an error like the above using MSDN help in Visual Studio (or in any other situation) you might try the following:Go to "Add/Remove Programs", locate "Microsoft Document Explorer 2005" and repair it. You will have to restart your computer. Kudos to Steven Cheng for this info posted here.The issue might be due to a failed or removed Orcas (Visual Studio 2008) Beta installation which corrupted the Document Explorer component on your machine. It's still advisable to install Orcas Betas on...

If you have MySQL Connector/Net installed and then install Orcas (Visual Studio 2008) Beta 2 (and probably earlier versions), your machine.config file will be changed so that it does not include the MySQL Connector/Net data provider information anymore. This can lead to problems with the DataSet designer, first complaining about the MySQL Connector/Net and then with the message quoted in title of this post. The simple solution is to reinstall the MySQL Connector/Net which will put the necessary ...

Finding duplicates over all involved columns with Transact-SQL is done with the queryselect column1 (, column2...)from tablegroup by column1 (, column2...)having count(*) > 1This technique is especially important for finding duplicates before inserting into tables with primary keys made up of multiple columns.But what if the duplicate is only in one column, call it half- or semi-duplicate, incomplete duplicate or asymmetrical duplicate or whatever. For example, I tried to come up with a query th...

One of the most (in)famous marketing ploys of the not-so-recent past was the .NET pet store, where Microsoft showcased the new .NET framework in an ASP.NET web application with similar functionality as the erstwhile Java PetStore, using vastly less code. It also performed and scaled much better on all benchmarks conducted by Microsoft.Sure enough, there's a pet store done in Ruby on Rails as part of the ThoughtWorks Commons project, used mainly for scalability "shootouts". Check it out and poke ...

Simple many-to-many relationships in Rails can be defined with the has_and_belongs_to_many directive in the controller. However, this approach has limitations for scaffolding in that Rails does not support rendering the relevant selection controls for the "other side of many" out-of-the box . There are a few plugins that can handle this, namely the scaffolding extension and ActiveScaffold. The latter gives you much richer - albeit somewhat rough around the edges - date entry pages for simply rep...

Update: This post may be outdated as implementations of the Google Map API should support pagescroll prevention out of the box now. This has been checked for Ruby on Rails and the pertinent code was removed.Since version 2.78 the Google Map API exposes mouse wheel scroll zooming straight out of the box, obviating the need for hacks and custom programming to get this essential user experience to fly. Mouse wheel zooming is enable by simply adding
map.enableScrollWheelZoom();
after the code that ...

In SQL Server 2000 you could add ORDER BY to the query defining a view that started with SELECT TOP (100) PERCENT... which is the default query when you create a view with SQL Server Enterprise Manager for SQL Server 2000.The TOP statement would pretend to limit the resultset (nothing is actually limited when 100 percent are returned) and ORDER BY could be applied. However, things changed with SQL Server 2005. The query optimizer now removes both TOP and ORDER BY clauses if the query is for the ...

One of the greatest time-wasters using Visual Studio is navigating the Solution Explorer looking for files to open or edit. With multiple projects and more files and folders for each project it just gets worse and worse. So Chris O'Sullivan created this little Visual Studio Plugin to quickly find files to open and edit without leaving the keyboard. Lars Engel has improved it to work with Visual Studio 2003 (and 2005). Be sure to follow the installation instructions on Chris' site.The free DPack...

Starting MSN Messenger (7.0) today the following came up: Clicking the What's New... button brings up the following page in Firefox:Yep, there is exactly nothing on this page except for some eyecandy (No content was disallowed or blocked on my side).So not only is Microsoft blackmailing users as part of their Windows lock-in strategy, they also fail at creating a simple working web page to inform me why I should fall for that lock-in. And since I had tried that atrociously slow bloatware Live Me...

To backup, replicate or mirror a repository is arguably one of the most important tasks working with Subversion. Of course a repository folder is completely self-contained and can be copied or ftped to a different location and read by svn without any problems as long as there is no writing or locking going on. Besides the simple copy there are several safer and more svn-specific options, three of which are discussed in this article. However, the suggested svnadmin hotcopy command like most svnad...

Be sure to read this interview with Zed Shaw and Matt Pelletier discussing the enterprise-readiness of Ruby on Rails against the backdrop of the J2EE quagmire that has developed over past few years. Some big players might try to hijack RoR with certification and enterprise features as the only way to make money on the platform just like it played out with J2EE. And all the while the Java crowd is mired in inertia as the Java enterprise mess created by Sun and others is paying the mortgages of so...

Sometimes I miss the option that you have in classic ASP, PHP or Ruby on Rails to just put a nested loop into the html page (view, presentation layer) to display nested data. Of course this is, strictly speaking, against ASP.NET best practices where you're supposed to use web controls for everything. Then again one could make the argument that the loop actually belongs in the view. This would be .aspx page, and not in the controller or the model (code behind file in ASP.NET).The task at hand is ...

Ok, the title's a bit contrived. It's for the keywords, mainly. Anyway, to have an Ubuntu machine in your network environment has a number of benefits:
Learning Linux and trying out Linux software which for the most part is high-quality (and free).
Have a staging server for your Ruby on Rails applications.
Having an SSH access point into your network for (limited) remote administration, much easier to set up (less secure though) than VPN.
You can either have a full installation of Ubuntu ...

Vista-style cursors can be downloaded here (white pointer) and here (black pointer). Unzip anywhere on your hard drive, right-click the .inf files and select "Install...". Then select the cursor at Start Button>Control Panel>Mouse>Pointers. One more reason NOT to upgrade to Vista. Still looking for a "red expanding circle at mouse-click location like in the Camtasia videos" which is (probably?!, I have no Mac) available for OS X but not for Windows....

We all want pretty and search-engine friendly URLs for our blog posts. The most common format is /%year%/%monthnum%/%day%/%postname%/ as it gives users and search engines optimal information about the topic and the month of the post (er, you might want to check out the URL of this post for an example). As it turns out, having Wordpress generate such URLs is possible on IIS 6 in a shared hosting environment without much effort and there is no need to move to an Apache host with mod_rewrite etc. T...

Unlike ASP.NET (which I'm more familiar with), Windows Forms don't have any "Validation Controls", so validating input has to be wired into the event model of your app. After some experimenting I found this procedure to work best for validating text box input:1. Drop an ErrorProvider component onto your form. This component appears to have designer support when you drag it, however, it is not a control but a container-level component (like ImageList and ToolTip among others). The ErrorProvider c...

SUPER is a GUI to ffmpeg, mencoder, mplayer, x264, ffmpeg2theora & the theora/vorbis RealProducer plugIn. If you need a simple, yet very efficient tool to convert (encode) or play any Multimedia file, without reading manuals or spending long hours training, then SUPER is all you need. It is a Multimedia Encoder and a Multimedia Player, easy-to-use with 1 simple click.
Trying to download this useful app from their web site at http://www.erightsoft.com/SUPER.html is a waste of time as the browser ...

HD View is a technology from Microsoft Research, merging pyramidic/pyramidal (mutiple layers with different pixel counts) viewing technology introduced by the likes of Zoomify with panoramic viewing today offered by viewers implemented in QTVR, Java and Flash. Microsoft have also addressed the issues arising from the perspective projection used by current panoramic viewers, which are especially obvious with wide-angle QTVR cubic panoramas. These problems make the viewing experience sometimes fee...

The quality of healthcare in Thailand is truly amazing. Hospitals in larger cities are not only clean, well organized and staffed with friendly nurses and doctors, they also have all the latest technology and equipment. Add to that the dexterity and craftsmanship Thais have built over centuries, which today comes to the fore in high quality surgery. Having lived in Thailand for ten years I have yet to come across a foreigner being the "victim" of a botched surgery. Rather, everyone seems to be t...

Certainly there are several options, some commercial and some freeware/regware. However, after installing some of the available choices which didn't really cut it for different reasons I realized that I have a great player for MP3 files already installed on my PPC. I have used TCPMP (formerly BetaPlayer) for about three years as a reliable player of video files for the Pocket PC, mainly for checking my golf swing (swapping SD cards with .avi files from a digital camera). As it turns out, TCMP is...

Many webmasters of smaller web sites use the services of web hosting companies located in locations around the globe. Here in Thailand running your own web server is not feasible, as connections from the important markets of Europe, the Americas and even other parts of Asia might be too slow and unreliable. Using the services of a web hosting company usually involves running a local development database and an identical database running on the web hosting company's servers.To keep the contents i...

From The Nation:##Work began in Chiang Mai yesterday to remove a fountain at the Chang Pheuk Gate. The fountain, which has been the subject of a seven-year dispute between the Chiang Mai Municipality and the Fine Arts Department, will be re-installed at Suan Lanna Rama IX Park. Published on July 13, 2007A ritual to apologise to supernatural spirits was held at 8am yesterday before work began. Astrologer Sukit Phutasin said the gate had served as a triumphal entranceway to the city for Lanna king...

While the basic cab creation is outlined here, this article describes the entire rather involved process of packaging the cab with a windows installer. This procedure takes some practice to master. No fewer than 3 major steps have to be taken outlined in this little cheat sheet:Step 1. Package the output of your project (project type: Smart Device Cab Project)
* Add project output of your main project (which is usually a smart device app) and create a link to it for the mobile device's programs ...

Visual Studio 2002 and 2003 created resx resource files for each and every ascx and aspx file. When upgrading to ASP.NET 2.0 these files are no longer needed as resource files are centrally stored in the resource folders and compiled.So if after removing the resx files you get compilation errors such as the followingsimply open the project file (.csproj or .vbproj) in Notepad and delete the entries that look like this:
{:tag :br, :attrs nil, :content []}<EmbeddedResource Include="panorama\search...

##Geotagging of photos and other data items today is a tedious and error-prone affair, not least because Latitude and Longitude have to be entered 100% correctly. One wrong digit and you may be many meters or many miles off. Certainly there are numerous tools to these task easier and new ones are released almost daily in this age of geotagging craze. Even with these products, having to deal with high precision numbers, positive and negative, matching time etc. can be quite daunting. So as with d...

What is the antonym of integer (whole number)? I found nothing in any dictionaries or a clear answer on the web, but this in the Wikipedia:Historically, any number that did not represent a whole was called a "fraction". The numbers that we now call "decimals" were originally called "decimal fractions"; the numbers we now call "fractions" were called "vulgar fractions", the word "vulgar" meaning "commonplace"."Fraction" makes sense, as anything that is not integer (whole) is fractured (broken). O...

After not finding a simple app online calculating the seconds since a past point in time, I made this little web form.It uses the rather obscure DateTime.ParseExact () function which provides an unforgiving way to parse a date string according to a specific date format string. The date string has to match the format string exactly, otherwise an exception will be thrown. Also, don't forget to escape slashes in your date format string.Here's some sample code:
string theDate = tbDateInput.Text;...

Integration services:You may receive an error like the following:
MSP Error: 29513 SQL Server Setup Failed to compile the Managed Object Format
(MOF) file C:\Program Files\Microsoft SQL
Server\90\Shared\sqlmgmproviderxpsp2up.mof
The file may exist as sqlmgmprovider.mof, which is a former version created for a former version of the OS (example: you had Windows 2000 Server installed and then upgraded to Windows Server 2003).The workaround suggested by Microsoft did not work for me. So I simply r...

And here's another hack to enable the GPS settings applet on Windows Mobile 5. I'm still using the PHM registry editor to edit the registry, but this classic program is not really working well on Windows Mobile 5. There might be better Compact Framework based tools today, such as this one. Anyway, it's ironic that Microsoft just delivered serial port programmability with the Compact Framework 2.0 (System.IO.Ports namespace), and at the same time provided the serial-port-less GPSID programming in...

Scott Mitchell has what is probably the smoothest solution for the GridView which works for the DetailsView just the same:
Put a DetailsView into the EmptyDataTemplate of the "parent DetailsView"
Bind it to the same datasource as the parent
Set the DefaultMode of the child to "Insert"
Alternatively, you can put a Button into the EmptyDataTemplate and define the click event handler as follows:
protected void Button1_Click(object sender, EventArgs e)
{
DetailsView1.ChangeMode(DetailsView...

Transact-SQL doesn't have arrays or nifty string functions like the C
SELECT * FROM table1 WHERE id in (1,2,3,526);
so why no looping through comma-delimited strings?A "Table-valued User-defined Function" returning a table variable is a handy and versatile workaround letting you query and loop through the values with near array-like ease.The code could look like this:
Leo: Man, thank you very much for this. I was looking so hard for something like this and I found your site. Thanx a lot LeoAsh...

In SQL Server 2005 it's very easy to query multiple databases in the same statement.For databases on the same server just use:
SELECT * FROM Database1.dbo.Table1 INNER JOIN Database2.dbo.Table1 ON
Database1.dbo.Table1.ID = Database2.dbo.Table1.ID
GO
The statement is similar for linked servers.To provide for changing object names in the future the new SYNONYM feature of SQL Server 2005 is very handy. It lets you declare aliases for the following objects:
Tables
Views
Stored procedures
C...

Compiled HTML help for Perl is here, well written and easy to read. The very useful link contains much other stuff too.#Donnette Panama: I just wanted to say that I found your site via Goolge and I am glad I did. Keep up the good work and I will make sure to bookmark you for when I have more free time away from the books. Thanks again!...

Yes, Microsofts web site has some interesting content, such as this article. As I like to print stuff to PDF to read on my PDA, I will usually search all over for a "printer-friendly" link immediately. Alas, while MS pages have one in IE (Internet Explorer),![](/px/Microsoftperfidious_1428D/image06.png)no such luck in Firefox:![](/px/Microsoftperfidious_1428D/image02.png) nor the weirdo of browsers, Opera:![](/px/Microsoftperfidious_1428D/image08.png)So, to print the page, simply add "?pf=true" ...

Goheer has created a very nifty utility to greatly improve on the windows task switcher (Ctrl + T) with clickable icons and thumbnails of the open windows. There is also a power toy doing something similar but why use MS when you can avoid it? One more reason not to upgrade to Vista....

When installing Spamfighter's web version (downloaded file name spamfighter_web.exe) you may receive the "Error applying transforms. Verify that the specified transform paths are valid." error on some systems. Before delving deep into the registry to fix dead *.mst references (which might or might not work), it might be quicker to download the full version instead of the web installer. Also check out the Spamfighter support pages. Hope it helps.#Roy Shakespeare: Thanks very much Dirk, I had prob...

Structure and Interpretation of Computer Programs in tagged and optimized PDF version is available here. The book is the basis for computer science course 6.001 at MIT and quoted by Joel Spolsky's rant about the dangers of Java Schools. You could read this book on your PDA and code away on or cut and paste the samples using the brilliant Pocket Scheme for an extremely geeky tour de force. By all means buy a copy of this unrivaled classic, also to get the famous wizard cover that?s missing from t...

When running gpupdate (XP and above) and event ID 1091 ("The Group Policy client-side extension Security failed to log RSOP (Resultant Set of Policy) data. Please look for any errors reported earlier by that extension.") is logged, you might get rid of this error by typing in succession the following commands at the command prompt in the %windir%\system32 directory:
regsvr32 /n /i userenv.dll
regsvr32 /u scecli.dll
regsvr32 scecli.dll
Then run gpundate again and check the application log to see...

Having bought a Honda Jazz in Thailand I was looking all over the web for an owner's manual in English (the supplied version is in Thai which is tedious for me to read). Here I finally found it.#Nigel: Just to say thanks - I too have been searching for an owners manualHelen: Many thanks for this - I have also been searching to not much avail.andria: thank you very much for your help! i beleive it is rediculous that an english manual for this car is not available! thank you again for your help!zh...

While MS has to be commended for releasing version 1.0 the AJAX Extensions for ASP.NET on time and free of charge, the upgrade will not work for web sites which were upgraded from VS.NET 2003 and still have the tag in their web.config file. This will disable the AJAX functionality with no warning or error message whatsoever, prompting users to check and re-check the prescribed web.config updates and trying other fixes, wasting precious time. This issue has just appeared in the RTM version, stil...

Having bought a new SD card for my Pocket PC I discovered it came pre-formatted with the FAT (FAT 16) file system of yore. This file system has a volume size limit of 2 GB and some drawback regarding cluster size and fragmetation. So wouldn't it be preferable to use the newer FAT 32 file system? It turns out that due to technical reasons detailed here classic FAT is actually better and delivers better performance in most cases. It seems like the old dog still has some bark in him....

There are several replacement choices for the aging Notepad, which is still it's simplistic old self even in Vista. One great choice is EditpadLite (free) and the more expensive EditpadPro by fellow Thailand expat Jan Goyvaerts. If you want to edit Ruby with syntax highlighting, go for Notepad2 with Ruby. However, simply removing the old and renaming notepad2.exe to notepad.exe (located in your %systemroot%, usually C:\Windows\) won't cut it, and XP SP2 and the latest security updates for Window...

The time has come to evaluate MySQL as a database backend for .NET applications, in most cases replacing SQL Server rather than Access. Admittedly, Microsoft has done quite a bit over the past few years to stop the defection to open-source databases, offering SQL Server 2005 Workgroup Edition for small businesses as well as the free Express Edition.However, there still is no platform independence and open-source sexiness included with any of these offerings.Luckily, the entire MySQL-related stac...

This message is displayed when a device draws more than the available power from an USB port. The correct fix it to power the device with its own power source, then reset the port. If that's not an option you can disable the message as follows:
Go to the Device Manager
Locate "Universal Serial Bus controllers" in the list and expand.
Select the first USB Universal Host Controller.
Right click and select "Properties"
Go to the "Advanced" tab
Check "Don't tell me about USB errors"
C...

The current politial situation in Thailand can only be understood in its historical context. The Western notion expressed by some that "the coup was justified to fight corruption of the toppled regime" is quite simplistic, legalistic and seen from a purely Western perspective. For more profound backround information, two articles stand out: Kasian Tejapira's Toppling Thaksin (PDF download is at the bottom of the page) and Duncan McCargo's **Network monarchy and legitimacy crises in Thailand** (f...

Another article analyzing Thailand's culture of corruption from a religious vantage point. Thailand is fundamentally a very individualistic society where social conscience is exercised only within a circle of family, village or friends. This can be observed in road traffic where strangers meet and show hardly any consideration for one another. However, as soon as some sort of contact is established, Thais are extremely friendly and helpful with excellent social skills.The karmic viewpoint is als...

A brilliant article detailing the corruption from cradle to grave ingrained in Thai society. Surely the described "short-cuts" can be a very refreshing break from over-regulated Western societies, but sometimes one really learns the hard way that the rule of law has definite advantages. Thais have never subjected to rulers or rules, the villages were always rather independent. But practiced by the ruling elites, these customs have very sinister consequences in perpetuating an extreme hierarchica...

When building an editable ASP.NET 2.0 GridView or **DetailsView **this error is probably the most common issue. There must hardly be a developer who has not come across it at one time or another. It occurs when working with an ObjectDataSource based on a TableAdapter in ASP.NET 2.0, the easy path to enable Updating, Inserting and Deleting without any code or stored procedures the TableAdapter respresenting the data layer. This is the main advantage the GridView has over the DataGrid of .NET v.1x...

In Microsoft SQL Server 2005 Transact-SQL (and prior versions), you can make a dynamic ORDER BY based on a variable like so:
You can
SET @OrderBy = 'CustomerID'
or
SET @OrderBy = 'Rating'
, sorting will fail with SQL error similar to the following:
Conversion failed when converting character string to smalldatetime data
type.
in the first case and
Msg 8115, Level 16, State 2, Line 3 Arithmetic overflow error converting expression to data type smalldatetime.
in the second if the optimizer...

The Amazon Ecommerce Service is a great tool not just to monetize you web site, but also to get relevant content into your site. This content is frequently updated and search engines love this!As I found when researching listing travel guides on my Thailand Hotels web site, the latest version 4.0 ECS have matured into an easy to use and stable offering. When I started using Amazon Web Services about three years ago, there were still some quirks, especially with Unicode encoding (more on that in ...

![](/px/justin1.jpg)Our son Justin was born on October 23rd, 2006 at 7:42 a.m. at Lanna Hospitalin Chiang Mai, Thailand, weighing in at 3400 grams at 53 cm in "height". Mother and child are healthy and well. We're very happy. This blog is dedicated to him....