Is Classic ASP Dead?
May 25, 2006
I certainly think so. Try to search monster.com or careerbuilder.com for an ASP job. I bet you will not find more than one or two that are not ASP.NET jobs. Web Developers are coming to realize that Template Driven websites are far easier to maintain and implement. Go MVC!
Here are some articles and points that may help back up my weak, but assertive claim:
- ASP: The Beauty of a Dead Language
- The popular web developer site, SitePoint, is no longer accepting/releasing articles on classic ASP.
- It is very difficult to find ASP/VBScript documentation in the MSDN.
If your definition of a dead language is to be non-existent, then no classic asp is not dead. I’m simply referring to the fact that it is unlikely that a company/person is going to choose classic asp for their new product/project.
Windows Live Local
May 24, 2006
Finally — an online map that allows you to mark the map!
My mom just recently moved to a condo in FL. On her journey to FL, she got lost (yeah, she's a woman). So, she called me up and gave me the name of the road she was traveling on and asked me to look up the directions on the computer. In order to do so, Google Maps required me to enter in a starting point. This was a problem, I did not know her starting point; the road she was on was very long, so I couldn't just enter in the road name. What I needed was a way to mark her location on a map, and to use that as the starting address. Well…Windows Live Local does this. Very cool.
Movie Review: ‘Over the Hedge’
May 20, 2006
I am quite a fan of cartoons and CG-animated movies. I like the no boundaries thing — it makes for better humor and easier character development. Over the Hedge not only succeeded in having excellent character development, but it was the funniest movie I've seen released in 2006 (as of 5/20/06).
Voting System – Dojo DnD
May 18, 2006
I am writing a django app that requires a preferential voting system. Preferential voting systems on the web are kind of difficult, because you have so many candidates and the voters like to change their mind. What I came up with for a solution is to use Dojo's DnD, which will be used with AJAJ later on.
I am providing you with the Dojo code I wrote to help this great toolkit get the attention it deserves (I have been noticing some javascript DnD queries in my blog stats).
Here are some screenshots of what it does (I would have put it online, but I don't want to pay for hosting just yet):
pre-drag:
![]()
drag:
![]()
post-drag:
![]()
And here is the code:
vote.html
VoteDragAndDrop.js
vote.css
Note: those files have .txt extensions because wordpress.com won't allow me to upload them with their correct extensions (understandable). Also, sorry if the spacing in those files is akward. DOJO uses tabs and I'm used to spaces for tabs.
My Django Development Environment
May 17, 2006
I use the following directory hierarchy: /home/germ/web/projects/{admin-media,django,media,templates}/test1 (where test1 is the project name)
For all Django projects that don't have their own admin media:
ln -s /home/germ/django/trunk/django/contrib/admin/media /home/germ/web/projects/admin-media/myproject
In addition I put all project names in /etc/hosts so that I can access http://test1.localhost:8000/
127.0.0.1 localhost test1.localhost
It's a pain to tack on :8000 to the hostname everytime that I want to access the web site, so I use the following iptables, which redirects all traffic going to 127.0.0.1 on port 80 to port 8000:
iptables -t nat -I OUTPUT --src 0/0 --dst 127.0.0.1 -p tcp --dport 80 -j REDIRECT --to-ports 8000
I have decided to use lighttpd and fastcgi. I am doing so by applying JCrasta's patch to the trunk.
Here's my lighttpd.conf file:
# /etc/lighttpd/lighttpd.conf
# lighttpd configuration file
server.port = 8000
server.username = "lighttpd"
server.groupname = "lighttpd"
server.pid-file = "/var/run/lighttpd.pid"
server.modules = ( "mod_rewrite", "mod_redirect", "mod_alias",
"mod_access", "mod_fastcgi", "mod_accesslog" )
accesslog.filename = "/var/log/lighttpd/access.log"
server.errorlog = "/var/log/lighttpd/error.log"
server.indexfiles = ( "index.html" )
mimetype.assign = (
".css" => "text/css",
".gif" => "image/gif",
".html" => "text/html",
".jpeg" => "image/jpeg",
".jpg" => "image/jpeg",
".js" => "text/javascript",
".pdf" => "application/pdf",
".png" => "image/png",
".txt" => "text/plain"
)
var.web_root = "/home/germ/web"
server.document-root = var.web_root + "/misc"
include_shell "cat /etc/lighttpd/hosts-enabled/*"
And here's the virtual host config for lighttpd.conf (I chose not to do simple-vhost, because I didn't find it appropriate for my directory structure and naming).
# /etc/lighttpd/hosts-enabled/test1.localhost (a symlink
# /etc/lighttpd/hosts-available/test1.localhost)
$HTTP["host"] == "test1.localhost" {
server.document-root = var.web_root + "/projects/django/test1"
fastcgi.server = ( "/test1.fcgi" =>
( "main" =>
(
"socket" => "/var/www/sockets/germ/test1.sock",
"check-local" => "disable",
)
)
)
alias.url = (
"/media/" => var.web_root + "/projects/media/test1/",
"/admin-media/" => var.web_root + "/projects/admin-media/test1/",
)
url.rewrite-once = (
"^(/media.*)$" => "$1",
"^(/admin-media.*)$" => "$1",
"^/favicon.ico$" => "/media/favicon.ico",
"^(/.*)$" => "/test1.fcgi$1",
)
}
Run your python project with python manage.py runfcgi daemonize=false socket=/var/www/sockets/germ/test1.sock
And point your browser to http://test1.localhost/ and BAM!
Cleaning your Glasses
May 14, 2006
I have tried several eyeglass cleaning solutions, but they all just seem to smear the filth that's on my glasses. Want to know what actually works? Dishsoap and warm water. I was just reminded of this the other day when I went over my dad's house and tried some of his "top notch eye cleaner" to find that it didn't come close to the cleanliness of the dishsoap and warm water method.
Grammar
May 9, 2006
I rank #1 on Google for the phrase "my punctuation", and receive some traffic for "fix my punctuation" and similar queries. This slight traffic is enough for me to help out those seeking help
. Here's a few links that may help you:
Wayne Rogers & Will Farrell
May 8, 2006
I'm probably not the first one to notice this, but Will Farrell and Wayne Rogers look almost identical. When channel surfing, I always get tricked by M.A.S.H. into thinking it's some Will Farrell movie.
Small Dojo DnD Change – Gap Problem
May 7, 2006
I haven't submitted a blog entry in a while, and it's because I've been busy watching the Phoenix Suns dominate the Lakers. To get back into the groove of things (until Round 2 of the playoffs), I have decided to post this little dnd fix (if it can be called that, as it might not work for your particular setup).
This code should override/replace the _getNodeUnderMouse function in HtmlDragAndDrop.js, which will fix the drop indicator from jumping around when you mouse over a gap inbetween two nodes in the drop target. So…if you're having that problem, here's a potential solution. If you're not having that problem, then obviously, this is not for you.
_getNodeUnderMouse: function(e){
// find the child
var dcTop = dojo.style.getAbsoluteY(this.domNode, true); // get drop target coordinates
for (var i = 0, child; i < this.childBoxes.length; i++) {
with (this.childBoxes[i]) {
if (node.offsetTop > ((e.pageY - dcTop) + 2)) { return i; }
}
}
return -1;
},
Taking Elbows to the Face
May 3, 2006
Congratulations to the NBA for awarding Kobe Bryant for thowing elbows in Raja Bell's face. This is in response to AZCentral.com announcement of Raja Bells's suspension from game six of the 2006 Playoffs. Keep making those bucks for the NBA, Kobe. And good luck to the Phoenix Suns.