Archive Page 2
Ok, so let’s try this again…
That is, let’s try this whole blogging thing again. Sadly, one of my main reasons for not wanting to blog of late is I really hated the layout of my site. So step 1, fix that. Well, temporarily at least, as I’ve just turned back to the default wordpress theme for the time being.
Step 2, finding something to write about. Isn’t that always the case? Well I think I have something now, but we’ll see how long that lasts.
For the three people who have been, and or do still read this there isn’t much new going on in my life to speak about. I changed jobs recently, which was what the last post or two was about and beyond that I’m living a bit more comfortably, albeit all the things I try to do keep me from getting much sleep at night, but we’ll see if that can be fixed.
This is also my first post from Wordpress 2.0, and at first glance I’m not too happy with it, especially with this text editor, but I’ll give it a little more time and if it doesn’t work out, well I’ll find a better plugin or switch to another engine. Hell, maybe I’ll just write my own? Probably not…
Toodles
aebf641510b05569d740d3b1be938958->
2c84c8c681e27f969ec9cc70b05f7d3d->
68869d67a7560f1efc87c4874568c54a->
46a58b54c75aea70d764bb965702ec17->
68869d67a7560f1efc87c4874568c54a->
46a58b54c75aea70d764bb965702ec17->
46a58b54c75aea70d764bb965702ec17->
46a58b54c75aea70d764bb965702ec17->
Upgrade: .NET to PowerBuilder?
2 Comments Published January 26th, 2006 in random ramblings, programmingAlright, now before all three people who read this start hanging me for the title of the post, or poo gets flung by all the code monkeys around the net, I am not implying that PowerBuilder is an upgrade to .NET. However, since I haven’t posted in a while and there has been ample time for me to have things going on in my life I figure I’ll just bring everyone up to speed in one fell posting.
So what’s new? Well, since the last post I’ve quit my job, started a new one, quit one of the two bands I was in (or rather I finally told them my temp position in the band was just a temp thing and it’s time to find a real replacement), had a few holidays, saw a few movies, etc…
So the important part of those happenings would have to be the job change. I basically was tired of doing alot of work for little to no appreciation. Being expected to work more than 8 hours a day with no compensation for hours beyond 8. The boss would always tell us that 8 hours is just a job, beyond that is a career. With no compensation beyond 8 hours, I think 8 hours is a job, and beyond that would have to be slavery, or at least indentured servitude.
So yeah, now I’m working for another company, doing the same type of work (consulting/programming) and making a bit more to do it which is always a plus. Beyond that it’s a much better working environment which does make one inclined to do even more work. Of course now I’m learning PowerBuilder to maintain/upgrade an old app as we bid for a re-write to .NET. There will probably be a few more posts on PowerBuilder as I go…. it’s so much fun.
4e07346efbfb90628b7d0ce8870be434->
352a805f7755163b33e9d7c7e6720f5e->
a8c4e43bd240b8eea6b2e92bfac539ed->
c59ea8be6330ab39d25f816d1ffea519->
a8c4e43bd240b8eea6b2e92bfac539ed->
c59ea8be6330ab39d25f816d1ffea519->
a8c4e43bd240b8eea6b2e92bfac539ed->
c59ea8be6330ab39d25f816d1ffea519->
a8c4e43bd240b8eea6b2e92bfac539ed->
c59ea8be6330ab39d25f816d1ffea519->
a8c4e43bd240b8eea6b2e92bfac539ed->
c59ea8be6330ab39d25f816d1ffea519->
Wow, I asked if this was a date, not “Please format this as a date and check it for me….” So on this project we’ve been having some fun with the testers on the user side, and one of which sent us an issue saying “I entered 7/////////7 for a date and it accepted that as valid.” Well clearly that’s not right, we won’t go into why you’d enter that but ok…
A little searching for the save routine….
Hrmm, we’re calling isDate, why would it let that slip. Let’s see what’s going into the database. 7/7/2005
Ugh… Can I get an isDate function, and if you want a FormatAndValidateDate function as well, though not quite necessary.
f16b4bcc357e8048d89a19162ce45111->
0bc7fbc71d36ae5d815bedd024944f9d->
6d2b4423ea51a4524246a8964f58334d->
0b1a1e8e4cb241473c9d0002d880ced7->
0ee5b99e124688e9a9bc86fddf340a45->
8aef4765d3ce6484f6a1cbf308e80826->
0b1a1e8e4cb241473c9d0002d880ced7->
0ee5b99e124688e9a9bc86fddf340a45->
8aef4765d3ce6484f6a1cbf308e80826->
0ee5b99e124688e9a9bc86fddf340a45->
0ee5b99e124688e9a9bc86fddf340a45->
8aef4765d3ce6484f6a1cbf308e80826->
0b1a1e8e4cb241473c9d0002d880ced7->
0ee5b99e124688e9a9bc86fddf340a45->
8aef4765d3ce6484f6a1cbf308e80826->
0b1a1e8e4cb241473c9d0002d880ced7->
0ee5b99e124688e9a9bc86fddf340a45->
8aef4765d3ce6484f6a1cbf308e80826->
Programming in the key of C
1 Comment Published November 30th, 2005 in random ramblings, programming, VistaDBSo of late, when I haven’t been bogged down at work trying to push out this project for it’s release date, I’ve been going back to my roots. That is I’ve started programming in C again. Wow, it had been a while and took a few moments to realize how much work I have to do to get the language to work for me instead of what Visual Studio has been doing the past 2 years or so I’ve been playing with it. It was like exploring an old civilization or something along those lines. Actually I think the most gratifying part was that it was something I wanted to do instead of “had” to do.
Beyond that I would like to apologize to the guys that gave me the evaluation of VistaDB because I haven’t been able to test it out yet. This weekend though I believe I’ll finally get some free time to sit down and program? Wow, what a geeky statement. Hope Julianne didn’t read that
. Anyways, this weekend I have no shows to play, I shouldn’t have to go in to work. Should be a good weekend of programming and gaming. Yay!
c178088b17d4d1a49de1076f5d634d65->
e81e47af548bcd7744b21ae81429dd22->
ca4eb4a457d8c5cf0170e8652a73724e->
50c58dcae0c35d69129e3a1d3354fcd5->
ca4eb4a457d8c5cf0170e8652a73724e->
50c58dcae0c35d69129e3a1d3354fcd5->
50c58dcae0c35d69129e3a1d3354fcd5->
ca4eb4a457d8c5cf0170e8652a73724e->
066045d90214ae6f45cb70352e88e08c->
50c58dcae0c35d69129e3a1d3354fcd5->
ca4eb4a457d8c5cf0170e8652a73724e->
066045d90214ae6f45cb70352e88e08c->
50c58dcae0c35d69129e3a1d3354fcd5->
ca4eb4a457d8c5cf0170e8652a73724e->
Turned off trackbacks today…. I wasn’t sure if I should feel honored or what, but I was getting spam trackbacks and I’d rather not hurt my google ratings, as non-existant as they may be because of something like that. Comments should still work fine though.
d350bb0f9a1be0c2985b8bf1a50a2a5a->
e6672d2ea267643a3d695f27c4e3dae0->
e6672d2ea267643a3d695f27c4e3dae0->
e6672d2ea267643a3d695f27c4e3dae0->
e6672d2ea267643a3d695f27c4e3dae0->
Ahh, what looks to be the last long night for a while is over and already the weight seems to be lifting. There are still issues of course, and bugs to be fixed, waiting on the client for a few more specifications that have taken a good month to deliver….
So as I feel my eyes sagging and my bed calling, though it is 11am and I’ve got another 5-6 hours of sitting in this unforgiving office chair I leave you with a link to an oldie but goodie, an article I think everyone should read before they go out and hire someone to do web design/consulting/programming for them. It’s also a good read for people in those positions that are being hired because if you’ve worked once in a job like that you can more than likely relate to it.
0204d39f7c9e89e7fe4146afb91158cc->
8a901de5a421398b61a31d5796033c76->
8a901de5a421398b61a31d5796033c76->
8a901de5a421398b61a31d5796033c76->
8a901de5a421398b61a31d5796033c76->
How IE7 killed the development process…
4 Comments Published November 8th, 2005 in programming, Internet ExplorerSo today’s task, write a javascript calendar so that we don’t have to have postbacks and can allow the user to pick dates. Really the point of doing it is so that we get dates formatted to our specifications but don’t tell the users that. So anyways, I got that finished, and I’ll be posting the code for it in the next day or so after I make a few minor changes to it, but I’m behind in my work now because of IE7.
Why am I picking on poor old IE7. Basically the solution to the javascript calendar was to use an iframe tag so that when the calendar popped up in a div tag it could cover up drop down lists (selects) in IE. Of course, this works fine in firefox but we won’t get into that. So I got it working, tested in IE6, IE7, and firefox, and began putting it into my asp.net project. Well this is where the fun began. The code worked fine, deployed it and everything but when I went to view the control in design mode visual studio crashes and keeps crashing until you go in and edit the file by hand and remove the iframes.
So after wasting 4 or more hours trying to figure out what was going on, re-installing visual studio, etc. google pointed me to iframe bugs in IE6. So I figured that maybe something was done differently in IE7, and went back to IE6 and everything works perfectly now. Of course I’m sad now that I don’t get to use IE7 anymore because I definitely was enjoying the tabs and the layout. Oh well, hopefully everything is fixed when it comes time for it to ship.
d3eec19774fd7e985978ea4a647908bb->
1dceede3f8b1f99535a79f83c9940274->
81d646d4e9e2491d92da948f22cd07bf->
1dceede3f8b1f99535a79f83c9940274->
81d646d4e9e2491d92da948f22cd07bf->
81d646d4e9e2491d92da948f22cd07bf->
81d646d4e9e2491d92da948f22cd07bf->
Been a little while since my last post, but I’ve been down with bronchitis and a few other things that has put me on a nice cocktail of drugs that say to take with food or without so I have to actually sit down and plan out my day’s worth of meals and such. Not fun. But to the topic at hand….
So I was bouncing around through my rss aggregator yesterday, awaiting my trip to the doctor’s office when I came across VistaDB on Scoble’s Blog. The offer was basically that if you are a .NET blogger (only thing I really feel comfortable talking about tech-wise) you can have a free copy of the database for free. Sounds good to me, I like free, I loathe Access, I don’t much care for MSDE, SQL server is sometimes a bit too big and MySQL can be a real pain in the neck to set up. Yes there are plenty of other options, but those are the ones I use regularly (aside from Oracle which I really just make calls to that when the boss tells me too).
More information on the database to come whenever I get home and get a chance to play with it. I got the project in mind, now I just need to implement it. Speaking of which, anyone know of any CHEAP small/thin touch screens. It could be a something with it’s own OS on it as long as it’s internet capable.
840ce9b2690340d8db11240ee3257edd->
2fde881dae3a82a79934b6afd9b42099->
1c8a3d7b5de734a824055880bafad2ce->
1ad274cfd075e24fbb8b607fb092e36d->
1c8a3d7b5de734a824055880bafad2ce->
1ad274cfd075e24fbb8b607fb092e36d->
1c8a3d7b5de734a824055880bafad2ce->
1ad274cfd075e24fbb8b607fb092e36d->
1c8a3d7b5de734a824055880bafad2ce->
1ad274cfd075e24fbb8b607fb092e36d->
1c8a3d7b5de734a824055880bafad2ce->
1ad274cfd075e24fbb8b607fb092e36d->
So I think I jinxed myself earlier with that post about it being slow. I’m now on hour 16 at the office with no end in sight. Oh well though, I’m on a roll and having fun sitting here by myself with my music cranked and my fingers typing furiously at the keyboard. It feels alot like those days when I was first getting into programming and every moment was exciting. Granted all the work I’m doing now isn’t as exciting as that was but still it is fun. One downside is that I was not able to go to the studio to finish up my band’s first EP, but we had gotten together last night and made a list of the changes and between that and a few phone calls it got done with the rest of the guys. So it’s been alot of fun listening to that while I work.
So the office funny of the day has to deal with the distribution of UPS (Uninterrupted Power Supply) in the building. Obviously not every machine has them, the cost is too high and it’s not really worth it. The servers have them of course, and a few dev machines, but the funny part is that the coffee machine has one as well. So while my computer may go out in an electrical storm, I can always count on a warm cup of coffee while waiting for the power to return.
6e9837ff08065f9ed0266c28ebeb12af->
a3f5d76b5bd0ffe74ee65d357ddda9f5->
9e86656380cfc27fb948196597313efc->
fe807fad53bcd181735e464a0439ffa5->
9e86656380cfc27fb948196597313efc->
fe807fad53bcd181735e464a0439ffa5->
9e86656380cfc27fb948196597313efc->
fe807fad53bcd181735e464a0439ffa5->
9e86656380cfc27fb948196597313efc->
fe807fad53bcd181735e464a0439ffa5->
9e86656380cfc27fb948196597313efc->
fe807fad53bcd181735e464a0439ffa5->
So one of the most fun and yet boring times of a project is that end phase where you are pushing out bug fixes to the first round of testing. I think my favorite part of it all is sitting in a room with the rest of the devs and going through the list of bugs together and just making jokes about the way users write them up. For example:
Added myself as a new instrcutor. Did not save the data.
Ok, so you didn’t save the data? Or did the program not save the data. I mean more than likely it’s the latter and it is a bug, but at 8am it’s still something to make picking apart your programming go a little bit easier. And to top it all off, you didn’t even spell instructor right. Sorry Mike, I’m not a morning person and I had to pick on you.
So yeah, the next few days should be fun, for me it’s pretty much all CSS and JavaScript work, which JavaScript and ASP.NET, no matter what people may say to the contrary, is a pain in the ass. Namely in grabbing controls by their ID because of the way ASP.NET goes through and makes a unique ID for everything. Sure, it’s something that has to be done and it’s definitely easier when writing code-behind pages to have every textbox on all your controls that contains a first name be named txtFirstName, but it still makes for fun times when throwing in JavaScript to make the user experience better.
So back to work I go.
0a6565c39570e759d06e11124be5f6b0->
72f936f281582355414e52d9eed69212->
72f936f281582355414e52d9eed69212->
72f936f281582355414e52d9eed69212->
72f936f281582355414e52d9eed69212->
More DataGrid Fun, adding other controls
0 Comments Published October 20th, 2005 in asp.net, programming, vb.netSo just a quick post about some more datagrid fun from yesterday before I really set into the day’s work in earnest. Basically adding other controls to a datagrid (in this case a textbox and a dropdownlist) so that the user can just edit all the fields at once similar to how excel works. So to start here is the end result screen shot:

So from there, onto the code. It works pretty much the same as the one in the previous article, using a template column for the controls.
DropDownList:
<asp :templatecolumn>
<headertemplate>Vendor</headertemplate>
<itemtemplate>
<asp :dropdownlist ID=”ddlVendor” CssClass=”dgddl” Runat=”server”
DataTextField=”VendorDisplay” DataValueField=”VendorID”
DataSource=”<%# LoadVendors() %>”>
</asp>
</itemtemplate>
</asp>
TextBox:
<asp :templatecolumn>
<headertemplate>Actual Cost</headertemplate>
<itemtemplate>
<asp :textbox ID=”txtActualCost” CssClass=”shorttextbox”
Runat=”server”
Text=’<%#DataBinder.Eval(Container.DataItem, "ActualCost")%>’>
</asp>
</itemtemplate>
</asp>
They pretty much follow the same pattern, but the dropdownlist has a few more things to it, namely DataTextField and DataValueField. The first time I created the DDL I just called the onLoad and past it a method that would populate each individually, and that worked fine for populating them, but it gave me errors when I went to retrieve the values selected by the user so I opted for this method instead which I believe is probably the better method. The DateSource points to the LoadVendors Function which returns a DataTable.
For the text box you just have to point it to the right field and it takes care of the rest for you.
So to start with the code portion of this, let’s look at the LoadVendors, and then we’ll take a look at populating the rest of the DataGrid.
Dim rSet As SqlDataReader
Dim dt As New DataTable
dt.Columns.Add(New DataColumn(“VendorID”))
dt.Columns.Add(New DataColumn(“VendorDisplay”))
...
rSet = cmd.ExecuteReader()
Dim dr As DataRow = dt.NewRow
dr(0) = -1
dr(1) = “”
dt.Rows.Add(dr)
Do While rSet.Read
dr = dt.NewRow
dr(0) = rSet(“VendorID”)
dr(1) = rSet(“VendorTradeName”) & ” – ” & rSet(“City”) & ”, ” & rSet(“State”)
dt.Rows.Add(dr)
Loop
rSet.Close()
LoadVendors = dt
So basically I’m just creating the DataTable here with two columns, which if you’ll scroll up and look, correspond to the DataTextField and the DataValueField and I just fill them from there. So now we have this nice dropdownlist, but it’s rather useless if it all it does is force the person to pick their things everytime and it makes for a real pain to code if the person is changing that everytime so I need to pull back the data and pre-select a field if one has been selected before. This I put into the populate method for the entire DataGrid so that it happens right after the Datagrid has been bound. What I’m doing is quite simple, and there may be a better way, because as my friend puts it, I’m just cheating at Scrabble at this point. Namely I’m storing the value of that dropdownlist in the datagrid itself, which lets me set the DDL after binding, and it also stores the previously selected value for me so that I don’t update when I don’t need to.
Dim dt As New DataTable
...
If Not IsNothing(dt) And dt.Rows.Count > 0 Then
Me.dgItenerary.DataSource = dt
Me.dgItenerary.DataBind()
For Each item As DataGridItem In Me.dgItenerary.Items
If (item.Cells(6).Text <> 0) Then
Dim ddl As New DropDownList
ddl = CType(item.Cells(3).FindControl(“ddlVendor”), DropDownList)
ddl.SelectedValue = item.Cells(6).Text
End If
Next
End If
So basically I’m just running through each item in the datagrid and seeing if I had a value for that VendorID stored in there because sometimes a NULL gets returned and that’s quite alright. I also didn’t see a problem with just running it through a for loop in this instance because I never have more than 10 things at a time in this particular datagrid so I’m not taking a real performance hit. Not sure if it would be a problem with a large datagrid, but I’d rather try and figure out a way to handle it in the first pass instead. For that more than likely you’d just throw something into the SelectedIndex attribute of the control. Anyways I digress.
So what I’m doing is just looping through, if I have that VendorID then I want to pre-select the value of the DropDownList. I do this by finding the DDL control inside the Cell and casting it to a variable I can work with, set the SelectedValue and then move on.
eb09efff304ef270dba4dca23cb95c0c->
eb09efff304ef270dba4dca23cb95c0c->
eb09efff304ef270dba4dca23cb95c0c->
eb09efff304ef270dba4dca23cb95c0c->
eb09efff304ef270dba4dca23cb95c0c->
Enabling/Disabling Links in a DataGrid
1 Comment Published October 18th, 2005 in asp.net, programming, vb.netYesterday’s momentary dilemma of the day was being able to enable and with that disable links in an ASP.NET datagrid control. It was a fairly easy task, just took a little time to find what I needed to make it work. So here is what we’re looking for:

Quite simple by the look of it, so let’s get under the hood and pick apart how it works. To start we’ll look at the way I would normally tackle a regular datagrid with a delete button on it. Keep in mind that the delete button is the only thing on the datagrid so I am just using the Select command, if I were to implement both it would look a little different on the delete button, but there are plenty of articles out there to show how to set that up.
<asp :datagrid id=dgInstructorTravel runat="server" AutoGenerateColumns="False">
<columns>
<asp :buttoncolumn Text="Delete" HeaderText=" " CommandName="Select"></asp>
<asp :boundcolumn DataField="InstructorTravelID" Visible="False"></asp>
<asp :boundcolumn DataField="ItemDate" HeaderText="Date"></asp>
<asp :boundcolumn DataField="TravelItem" HeaderText="Travel Item"></asp>
<asp :boundcolumn DataField="Cost" HeaderText="Cost"></asp>
<asp :boundcolumn DataField="RequestLineItem" Visible="False"></asp>
</columns>
</asp>
So normally I would just set up a button column and go from there and the other columns (the last one that has it’s visible field set to false will mostly be for use in the upcoming change I need to make in order to disable that Delete button). Of course you don’t have to take the time to set up your columns in the asp file, but I like to because it gives me a little more control over what shows up on the screen and makes it easier to use the same dataset for multiple things. So the code behind that is simply just filling up a DataSet Object and binding it to the datagrid. That isn’t really necessary for this post but I know I get annoyed when people just say “just databind a dataset to the datagrid” and I reply I would if you would show me how. So here goes:
Dim dt As New DataTable
dt.Columns.Add(New DataColumn(“InstructorTravelID”))
dt.Columns.Add(New DataColumn(“TravelItem”))
dt.Columns.Add(New DataColumn(“ItemDate”))
dt.Columns.Add(New DataColumn(“Cost”))
dt.Columns.Add(New DataColumn(“RequestLineItem”))
RSet = cmd.ExecuteReader()
While RSet.Read()
Dim dr As DataRow = dt.NewRow()
dr(0) = RSet(“InstructorTravelID”)
dr(1) = RSet(“TravelItem”)
dr(2) = FormatDateTime(RSet(“ItemDate”), DateFormat.ShortDate)
dr(3) = RSet(“Cost”)
dr(4) = RSet(“RequestLineItem”)
dt.Rows.Add(dr)
End While
dgInstructorTravel.DataSource = dt
dgInstructorTravel.DataBind()
One thing to note, normally you don’t even have to go so far as to create the DataTable and set up all the columns, but that was the only way I could find to format the Date after the fact so I just went with that way. So now that we have all of our data in the datagrid there is really only one thing to change in the earlier DataGrid definition, and that is to replace the button column with a template column like this:
<asp :templatecolumn>
<headertemplate></headertemplate>
<itemtemplate>
<asp :linkbutton ID=”lnkInstructorTravelDelete” Runat=”server” CommandName=”Delete” OnClick=”deleteRequest”
CommandArgument=’<%#DataBinder.Eval(Container.DataItem, "InstructorTravelID")%>’
Enabled=’< %#IIf(DataBinder.Eval(Container.DataItem, “RequestLineItem”) is DBNull.Value, “True”,
“False”)%>’>Delete</asp>
</itemtemplate>
</asp>
So first and most important that you might not catch, I changed my mind at this point and decided to use the Delete Command, just in case later on someone wanted me to drop a Select on it. If you leave the CommandName=”Select” like it was before then it will just run off the old SelectIndexChanged Method that you had before. The OnClick=”deleteRequest” just means that it calls a method deleteRequest from the CodeBehind page. The command argument is passed, but by the title of the article you came for the Enabled section.
What I am doing there is putting an IIf (If and Only If) the RequestLineItem is Null, then set enabled to True, otherwise set it to False. One important thing to remember though is that in VB IIf will evaluate both outcomes, so if you put functions in there know that it will try to run both of them. It’s rather annoying especially if you are doing something like passing what could be a null or nothing object so keep that in the back of your mind.
So lastly, I’ll throw up the essentials of my deleteRequest method, just to make sure you have everything you need to accomplish this:
Public Sub deleteRequest(ByVal sender As Object, ByVal e As System.EventArgs)
Dim lnk As LinkButton
lnk = CType(sender, LinkButton)
Response.Write(lnk.CommandArgument)
End Sub
Questions? Ways to do it better? Leave a comment.
EDIT: Having problems with my formatter when it comes to the asp.net, so sorry in advance for that. If you notice things like asp:datagrid are turning into asp :datagrid and the closing tags are losing their attributes so please keep that in mind while I try to correct the problem.
c5767a87465c3006b31045887cb963c1->
3c76d3c5f7c311840bc38f07c195feeb->
3c76d3c5f7c311840bc38f07c195feeb->
3c76d3c5f7c311840bc38f07c195feeb->
3c76d3c5f7c311840bc38f07c195feeb->
3c76d3c5f7c311840bc38f07c195feeb->
So I grabbed a link to an article by Jakob Nielsen, a name that I’ve been finding more and more on the web the last few months. Basically the Usability Guy, who my first web encounter with was on DesignByFire in an article entitled “Design Eye for the Usability Guy”. Anyways, he posts a Top Ten Design Mistakes for Bloggers and well I found quite a few things that I could improve upon on my own site.
The main one that I am guilty of would be “8. Mixing Topics”, and even though that this is just a personal blog, I would like to point at #9 in that article as well. Now I just wish Jakob would do something about the design of his site, but his points have generally been good.
5885392c3b891518af70603e70b9da6b->
e4b9db3a8044f40b258752352d809773->
e4b9db3a8044f40b258752352d809773->
e4b9db3a8044f40b258752352d809773->
e4b9db3a8044f40b258752352d809773->
e4b9db3a8044f40b258752352d809773->
I got the first round of pictures up in the images section. Just got those today from Graduation a few months back. Thanks Vito!
28656aeffcf69950d0d1b0ee63648bcf->
9def11935babeee841f67f57808b0844->
9def11935babeee841f67f57808b0844->
Who needs a Gameboy Micro when you can build your own NES Micro.
312d056474d6a41e79fd80711016acef->
2ef3ed05c786e87e6d1386889d41d4ab->
2ef3ed05c786e87e6d1386889d41d4ab->
Search
About
You are currently browsing the buttons… weblog archives.
Latest
Archives
Categories
- asp.net (8)
- csharp (2)
- css reboot (1)
- gadgets (3)
- general computing (1)
- Internet Explorer (1)
- made in express (1)
- movies (2)
- music (7)
- programming (16)
- random ramblings (27)
- software (2)
- sports (1)
- vb.net (3)
- VistaDB (2)
- weather (3)
- website (11)
