| Blog General Travel Hockey Technical Gaming Links About Blog Archive Current Blogs November 2008 (1) October 2008 (3) September 2008 (1) August 2008 (4) July 2008 (3) June 2008 (1) May 2008 (1) April 2008 (3) March 2008 (3) February 2008 (3) January 2008 (1) 2007 (67) 2006 (23) 2005 (32) 2004 (10) Blog Tags General DVDs (2) Funny (6) Gadgets (5) Hawt (1) Movies (10) Music (5) Pets (3) Recipe (14) TV Shows (1) Web (20) Travel Calgary (2) Edmonton (12) New York (7) Niagara Falls (2) Pittsburgh (5) Washington (4) Hockey Pittsburgh Penguins (17) Technical .NET (2) Java (4) Software (3) Work (2) Gaming Commodore 64 (1) Master System (1) Xbox 360 (13) GamerTag ![]() The rarely updated blog of Joel Dixon | Viewing blogs in section TechnicalSaturday, August 18, 2007Welcome to joeldixon.com - it's the web 0.9# Posted by Joel Dixon at 18/08/2007 05:19:16As I stated way back when, I had always figured I would have a blog eventually - but I had originally assumed I would have coded the blog website myself as a programming exercise (being, at that point, new to PHP and MySQL). I originally signed up to Blogger to comment on a few people's blogs, and I started making posts while developing my own Blog website. As is common with other "coding for fun" projects of mine, the process dragged on a lot longer than I had originally thought. It's funny, part of the reason I didn't want to "settle" for Blogger's software was the lack of a few key features I wanted (such as tags, image uploads etc). Sure enough - by the time I had completed my site, Blogger gained most of my wanted features, and more. But anyway - it's finally finished - and hopefully it will convince me to blog more often while in Edmonton. Some of the key features that I wanted include: - - URLs for my blog entries include the date of publication and title of the blog post (i.e. http://www.joeldixon.com/blog/entry/2007/08/09/day-1-in-edmo nton). I'm often reluctant to click an anonymous blog post when the url is something like http://example.com/blog?entry_id=12 or http://example.com/blog/12). I also wanted, as much as possible, for the URLs to make sense - like http://www.joeldixon.com/blog/archive/2005/page/2. - - I personally like HTML, so I wanted commenters to be allowed to use (limited) HTML tags, as well as the common BBCode rip-off that most sites provide. This includes image linking for comments, and image uploads for blog posts. Oh - and you gotsa have smilies ![]() - - Originally Blogger only allowed members to post with an email or website address. I wanted to provide an option to register to the site (manage your profile, keep track of post count etc) for commenting - but also allow anonymous comments provide a name, email address and home page. Sure, spammers may eventually enjoy this feature - but I can set individual blog posts to require a captcha (generally only 1 in 50 of my old blog posts generated any spam). - - A pretty neat feature I blatantly stole from my little brother (though his is much fancier in terms of animation), I wanted the ability to allow quick comments on blog posts from the main page of the site. Also, I wanted to allow a "Preview" button - mainly because of the number of times I've stuffed up the formatting one one of my blog comments. - - (oh my!) Blog tags are pretty cool, but I also wanted a way to keep my geeky technical and gaming posts separate from the suave travelings of a jetsetter (because, like, there's so much more to me). The home page still shows all sections combined, but I will probably provide an RSS feed for each section if demand requires. - - Another piece of website thievery, I wanted to be able to see the last five comments or so on my homepage with ease. The blog search is also something that helps when when I think "I know I've typed this before" - though as it was the last feature implemented, it's really dodgy at present. - - Most coded-at-home blog sites have a dynamically generated RSS feed that gets created each time it is requested (i.e. I go to the RSS feed's page, it goes to the database to get the last 20 posts then outputs the results as XML). The problem with this approach is that some RSS clients request the XML feed in great frequency to check if anything's been updated. Even with as limited a readership as mine, these requests can add up and really slow down the database. Instead, I've made it so a physical XML file is saved to my website each time a blog post is updated, or a future-dated blog post is made active. This file generation is slower than a simple database request being returned as XML, but if history is anything to go by, my post frequency is nothing to worry about! I'm probably leaving out heaps of features that took plenty of time and heaps of head scratching, but I'm sure you get the idea. So register to comment, sign up to the RSS feed and stay a while! # Posted in the Technical section and tagged as: Web Comments (2) | Add Comment Wednesday, July 13, 2005Remember Me! <flaming eyeballs># Posted by Joel Dixon at 13/07/2005 11:58:00Well, my USB key wiped itself again (third time thus far) which is very annoying. I use it to store old work, and common code I'm always looking up. An example of this is VBA code required to unlock a protected Excel workbook (for whenever I want the answers to the latest Excel Quiz doing the rounds): VBA Code:
I've decided to start posting things like that here - and use my USB key for transport rather than storage. # Posted in the Technical section Comments (0) | Add Comment Sunday, July 10, 2005Checkers# Posted by Joel Dixon at 10/07/2005 23:33:00Going through some of my old uni work, I found my Checkers assignment. It's not very good - but I like the look of it. I've stuffed up the Game Tree Algorithm though - as the computer plays good for the first half of the game, then it tries to let me capture it's pieces. Oh well, enjoy. # Posted in the Technical section and tagged as: Java Comments (0) | Add Comment Friday, June 17, 2005Java Snob# Posted by Joel Dixon at 17/06/2005 17:52:00Java has been my programming language since my first year at university (1999). Before Uni I had toyed with Basic, Turbo Pascal and VBA (Visual Basic behind Access / Excel) for VCE, but my largest programming experience was Batch files on our home computer. I really took to Java at uni, and programmed a few things in my own time (a calculator and text editor). When I started my graduate job I was put on a Java maintenance project, which I enjoyed a lot for the first few years. Since then, I have also been toying with my shape drawing program in my spare time - which I also enjoy. I haven't coded much Java lately, as I've been doing .NET work and recently been on a BizTalk Server course which I enjoyed thoroughly. Tonight I decided to play with my shape drawing program and try to get some work done. So I started JBuilder and couldn't start - I've been spoiled by Visual Studio, and .NET development. JBuilder's Form Designer is shite - and wiring up event processing is tiresome. The IntelliSense was also limited compared to what I've been used to. A mate from work was saying that .NET development was very enjoyable - I'm starting to understand why. So I've closed by JBuilder - and I'm not sure if I'm going to opening it again from home. Perhaps more Java projects at work will change my mind - but for now I think I'll be happy with .NET. Unless there's a client that wants an MS-DOS Batch File solution ![]() # Posted in the Technical section and tagged as: .NET, Java Comments (0) | Add Comment Thursday, April 07, 2005ADO.NET Strongly Typed Relationships# Posted by Joel Dixon at 07/04/2005 01:55:00Updated by Joel Dixon at 21/09/2007 04:03:35 - added comment captcha It's been over a month since my last blog - but that's OK - I'm sure no-one will mind! I've decided to add a little technical advice about accessing data with Strongly Typed DataSets in ADO.NET. Reason being, I spent over an hour looking for this information before I finally tracked it down on someone's blog. After my post, it will double the amount of blogs with this information ![]() In my ASP.NET WebService, I like to use strongly typed DataSets to access my data with ADO.NET, it's a whole lot cleaner that way. For my example, let's say we have a Customers table, and an Orders table. Customers are identified by their CustomerID, and orders by their OrderID (yes, I'm using Northwind). The Orders table also has the CustomerID that made the order (a one to many relationship). Defining the strongly typed DataSet for this in Visual Studio.NET is quite easy:
Now that you have the strongly typed DataSet, you can directly refer to column names. For example, instead of: Code:
you can use: Code:
That was all good - but I wanted to look at the Orders that are assigned to a Customer (as per the relationship I added above). Most examples were telling me to do something like this: Code:
This gets the job done - but we're back to using things like orderRow["OrderID"] instead of orderRow.OrderID. The disadvantage to using GetChildRows is that it returns an array of DataRow's - not Orders. A way to achieve the above code using your strongly typed relationship is as follows: Code:
When the relationship was created above, it added a GetOrdersRows() method on the CustomersRow object. It may not seem like much - but having the strongly typed OrderRow can help (well, it helped me). After doing a quick search on GetOrdersRows() (to see if I had missed any examples of this) - I found a good ADO.NET tutorial. I wish I had have found that a few hours ago! # Posted in the Technical section and tagged as: .NET Comments (5) | Add Comment Thursday, February 10, 2005Dragging and dropping# Posted by Joel Dixon at 10/02/2005 01:26:00It took me ages, but I finally got drag-and-drop working in my shape drawing program. I had to code most of it myself (the Java dnd stuff wasn't that helpful), but it works just as I like it. When you draw a few shapes (that intersect), you can use the object browser to drag them up and down the list (the shapes are drawn from bottom to top). So the shape at the top of the object browser will be drawn on top of all of the other shapes. (use different colours and thicknesses to really see the effect) Small things amuse small minds - and my small mind was busy on that one for a while ![]() # Posted in the Technical section and tagged as: Java Comments (0) | Add Comment Saturday, January 29, 2005A Good (?) Idea# Posted by Joel Dixon at 29/01/2005 17:57:00Updated by Joel Dixon at 19/08/2007 11:17:49 When trying to cut an image from paint I was squinting my eyes to see where my hairline cursor was sitting. I've used Hypersnap-DX to take screen captures for a while now - and it includes an integrated zoom window. While doing my cut from paint, I was thinking that it'd be good to have the same kind of zoom window available with a keyboard shortcut. I know that Microsoft has their Magnifier (press Win-U), but it only provides a small window on the top of the current monitor. I'd like a way to zoom with my secondary monitor (I'm on a dual monitor setup) when I press a keyboard shortcut. I was thinking that this might be something I have to make myself, until I remembered a product called UltraMon that provides these kinds of utilities. I had a quick look at their site and couldn't find it. Then I remembered the reason that I never bought UltraMon - my videocard came with software that provided all of UltraMon's functionality. Sure enough - after a quick look through the nView Desktop software I found exactly what I was looking for. Now, when I press Ctrl-F12 the secondary monitor changes to a 10x Zoom window. The window also swaps monitors when my mouse does. See snapshop below (the right half is the zoomed window, and my mouse is somewhere in the top left of the first monitor. And yes, I'm currently listening to Live - I absolutely love "We Deal in Dreams"). I love finding things that I didn't know I had! ![]() # Posted in the Technical section and tagged as: Software Comments (2) | Add Comment Thursday, January 20, 2005Draw some shapes - WOW!# Posted by Joel Dixon at 20/01/2005 11:52:00For the last 2 years I've been on the same project, providing support for an existing system. While I have made small / medium changes to the system, most of my time is spent dealing with problems to do with business logic. As a result, I've decided to download JBuilder and stuff around with some math based programming. I'm going to make a program that allows you to draw shapes (furniture) so that you can move them around and design a room. I've finished the drawing of shapes part - and thought I'd put it up here (I'll also post the source code when I get back home). Click here for Shape Drawing Applet. It's very crappy at the moment, but it works and provides some basic options. When I tested that it was uploaded properly, I had already found one small bug - see if you can find it. Let me know if there are any features / options that would make this program better (I'm already adding colour for the next version). # Posted in the Technical section and tagged as: Java Comments (4) | Add Comment Sunday, January 09, 2005Microsoft AntiSpyware# Posted by Joel Dixon at 09/01/2005 13:58:00Microsoft has recently released their AntiSpyware software, which is basically a product of their acquisition of Giant Software. I gave it a quick go - and it looks really good. Setup was easy, and it downloaded the latest signature files in no time. I was a little surprised when it finished though - it said I had no Spyware: ![]() I guess I practice safe-computing? Another neat feature that I didn't know it had - you can get it to erase the history of some common programs etc: ![]() I'm going to keep the real-time protection running - and see how it goes. # Posted in the Technical section and tagged as: Software Comments (0) | Add Comment Tuesday, January 04, 2005Software I use# Posted by Joel Dixon at 04/01/2005 22:22:00In case anyone's interested - here's a list of the Software / Utilities I use for my various home projects: Firefox - My favourite browser. Opera - I use this browser (along with IE) to test my websites. It would probably be my browser of choice if it wasn't for Firefox. Total Commander - A split screen file manager for Windows. Having two directories side-by-side to easily copy / move makes a lot of sense when you start using it. IrfanView - A very easy-to-use and powerful Image viewer / editor. Converting files is a breeze. UltraEdit - I was using TextPad for my MDI (Multi Document Interface) needs for a while - but it got too annoying. We use UltraEdit at work, and it worked well in most instances, so I purchased it for home. GetRight - The download manager I currently use - though I don't use it that frequently (dial-up). Quintessential Player - I bought MusicMatch Jukebox ages ago - until they required extra money to upgrade (I hate that), so I switched to QCD. Works very well in my experience - and it's freeware! # Posted in the Technical section and tagged as: Software, Web Comments (5) | Add Comment Next Page | Blog Search Recent Blogs Street Fighter: The Later Years Stop looking at me, swan! Trivial Awesome Blossom! Not Will Ferrell Trivia Timmy didn't think about the Mini-Feed Thongs and Superglue The Deep Voiced Knight Jonathan Roy charged with assault Superman x 4Feed Blog EntriesRecent Comments What a waste posted 4 months ago by joeldixon I'm not 100% sure - I may have still been using Windows 98 back then (very old computer). I'm ... link What a waste posted 4 months ago by Tomek U haven't said what win version u use, but my pentium3 with XP SP2 installed worked just fine after about ... link The Deep Voiced Knight posted 4 months ago by joeldixon You're right - Christian Bale is a good Bruce Wayne - and if he toned down the scary voice he'd ... link The Deep Voiced Knight posted 4 months ago by thefurey haha - why did delta cut her hair? i actually dont mind bale as batman...well, actually, he's a very ... link The Deep Voiced Knight posted 4 months ago by joeldixon Yeah - for most of the movie I forgot that it was him. Then again, I didn't even notice ... link Comment Standings 1. the man with no name (45) 2. Hoff (39) 3. Gav (27) 4. Brad (20) 5. Hitman (16) 6. Eryc-Ads (13) 7. Deep Lurker (6) 8. Dieter (4) 9. thefurey (4) 10. Zelks (4) |
![]() About This Site | Contact Me | ||