Pownce, Technorati, YouTube Pocket PC, and C#

Here is a list of last week’s activities:

  1. I have finished my Pownce widget using their API which provides JSON data.
  2. I completed a Technorati widget for searching blogs.
  3. I figured out how to convert YouTube videos for the Pocket PC and copied a few to its Secure Digital media card. Now when I go on the YouCruise I can show the other passengers some videos. There are always some people who have never heard of YouTube.
  4. I’ve been slowly learning about new C# language features like lambda expressions and LINQ.

I’m researching a 100% pure client side method to create web site mashups. Soon I will add a page to my web site to demonstrate a mashup based on many sources of data. This will not require any server side processing so I will be able to host it on this web site.

Posted in General, Web | 1 Comment

Amazon Mashups, Expression Web VBA, JSON Viewer

Here is a list of what I’ve been doing for the last two weeks:1. Started working with the Amazon web services API. I added a web page to my help collection Notes which gets my programming books wish list from Amazon.2. I wrote a Microsoft Expression Web VBA macro that creates a new web page for my help collection. It automatically fills in today’s date for me and pops up a form where I can enter the topic and title. This will save me a lot of time.

3. Bought digital media for my Pocket PC and Panasonic camcorder. They both take Secure Digital cards so I bought two 1 GB sticks. I also bought some Mini DV tapes. The Pocket PC did not come with any batteries or a power adapter so I’ve had to bid on more eBay auctions to get them.

4. I’ve been doing a lot of work with JSON. I recently found a JSON Viewer which will help me to figure out the object model of the data I retrieve from web services. I recently signed up at the Pownce social networking site and I’m trying to do something with their API. Update: Pownce is now defunct.

I’ve started to read the book The Meme Machine by Susan Blackmore. It is an interesting book about how ideas and stories replicate themselves and spread throughout society. I think the concept is useful for understanding the Internet and viral video.

Posted in General, Programming, Web | Leave a comment

Reinstalling Visual Studio 2005

Tonight I am reinstalling Visual Studio 2005. It takes about 4 hours to install so this will waste my entire evening. I have been having problems running Visual Studio 2005. The Windows Installer msiexec.exe process has been randomly starting up and hogging my PC. This evening I figured out that I have both the Standard and the Professional versions installed and it is the Standard version that is trying to repair itself. So I am trying to uninstall the Standard Version.

Today I got a battery for a DELL Axim X5 Pocket PC I bought on eBay. This is the same kind of Pocket PC that I bought my older brother for Christmas. I was impressed by its ability to play videos using the Pocket PC version of Windows Media Player. I plan to take it on the YouCruise to show videos to other vloggers. I have also bought a Panasonic PV-GS120 3CCD MiniDV Camcorder on eBay so I will have a decent camcorder to use on the trip.

Today I learned how to create a tag cloud using ASP.NET 2.0. I’m thinking about starting a social networking services site. One of the services could be a tag cloud of all the tags that a vlogger uses to describe their videos. This is a feature that YouTube does not offer.

Posted in General | Leave a comment

SubVersion

I’ve been reading many other programmer blogs to get a sense of what I need to know to remain marketable. When you work alone or on a small team you experience professional social isolation and don’t learn about the best practices that everyone in your industry would expect you to know.

One of the professional practices I read about was source control, also known as revision control. Source control is used to manage source code that a team of developers is working on. It maintains copies of changed files, allows you to annotate changes, keeps a repository of the project, manages the merging of files, and allows you to restore files to a previous version. Obviously this is not something you’ll use if you work alone so an independent software developer is unlikely to be familiar with it.

Most professional programmers seem to be using SubVersion. It has a Visual Studio Add-In AnkhSVN and a Windows Explorer client, TortoiseSVN. The server requires the Apache web server. I already had the Windows Explorer shell extension installed because I needed it to get some Python packages. I found some detailed instructions on how to install SubVersion on a programmer’s blog, another benefit of perusing blogs.

Make sure you install Apache 2.0 and not the latest version because SubVersion does not work well with Apache 2.2. I don’t care for this requirement because I do most of my work with Internet Information Server and don’t want to manage another web server. After you get everything installed and tested you still have to spend a lot of time getting used to the process of committing changes and retrieving projects. This requires a considerable investment in time but I can see why being unfamiliar with SubVersion might require training for a new hire.

Posted in Programming | Leave a comment

JSON Web Services

I’ve recently learned that it is possible to create a web service which returns JavaScript Object Notation JSON rather than XML. ASP.NET 2.0 allows you to give a web service a ScriptService attribute which “AJAX enables” the Web Service and allows JSON (JavaScript Object Notation) objects to be returned instead of SOAP messages. The client JavaScript can even directly call the web service using a ASP.NET AJAX client-side proxy. ASP.NET 2.0 has a JavaScriptSerializer class which you can use to convert data into JSON.

This is proving to be very useful for a project I am working on which pulls a lot of data from a database to create JavaScript arrays. The JavaScript arrays are then used to populate drop down lists. Unfortunately, this web application has some performance issues because it requires the browser to keep too much data in its memory. I’m hoping to solve this problem by using AJAX to load the JavaScript arrays instead of dynamically creating them through browser code, i.e. JavaScript code. The browser will still be holding the data in memory but it will not need to parse quite so much JavaScript code.

I am currently very interested in JSON because it has proven to be essential to create AJAX applications which can work in compiled HTML help files and help collections. I have already added some fully functional applications to my Notes; a RSS reader, an IP address lookup page, a page to get the weather from the National Weather Service, and a page to get postage rates from USPS. Some of these widgets require a proxy service running on my local web server to make remote requests for XML which is then converted to JSON. Now I should be able to add some custom web services to my JSON data sources. Google and Yahoo also provide many web services which can provide data in the JSON format.

Posted in ASP.NET, General, Programming | Leave a comment

Book Review: Microsoft AJAX Library Essentials

Blogging on the Microsoft Community web site http://weblogs.asp.net has proven to be more rewarding than blogging on my own. I get more feedback from other developers. There have also been other benefits. For example, I was sent a free book to review. Microsoft AJAX Library Essentials: Client-side ASP.NET AJAX 1.0 Explained by Cristian Darie and Bogdan Brinzarea is a book on the Microsoft JavaScript library for AJAX. There are many AJAX JavaScript libraries available like script.aculo.us, jQuery, and Prototype but the Microsoft AJAX Library is designed to make the most sense to ASP.NET developers because it uses namespaces and classes that are similar to C# and the .NET Framework.

This book provides an excellent overview of the object-oriented programming capabilities of JavaScript. Most web developers just hack JavaScript without getting into its OOP aspects so there is a lot to be gained from this material. For instance, I learned that the proper way to create HTML code is through the Document Object Model using functions like createElement, createTextNode, and appendChild instead of just doing it the lazy way with innerHTML. JavaScript isn’t a proper OOP language so there are many work arounds to get it to emulate classes. Some of these language features are similar to what has been added to C# 3.0; anonymous functions, inner functions, closures, functions as variables, and prototypes. However you don’t really need to know all the insidious OOP details to use the library.

There is also some information in the book on JSON (JavaScript Object Notation) which the Microsoft AJAX Library uses to exchange data. Basically it is a way to serialize JavaScript object arrays as plain text. I’m not sure if the Microsoft AJAX Library will accept XML. When I tried to use it with YouTube gData I got an error and had to include the json query string variable &alt=json.

The book also covers all the debugging tools available for JavaScript. I did find a few I did not have like the Venkman JavaScript Debugger and Nikhil Kothari’s Web Development Helper. There is a debug version of the library, MicrosoftAjax.debug.js, which contains code comments, readable code, and summary data for Visual Studio 2008 code completion. The library itself contains a debug class with methods for debugging and tracing. I consider this an excellent reason to use this library instead of other AJAX libraries because I rely heavily on debug statements and tracing.

I tried to use the Microsoft AJAX Library in my custom help collection. The request went out but the response gave me an error, “Access is denied.“. I suspect this is caused by the same origin policy which prevents documents or scripts loaded from one origin from getting or setting properties of documents from a different origin. A web page in a help 2.0 collection frequently has problems in referencing files and does not exactly operate within a domain.

You can find additional information on this book at: http://www.packtpub.com/ajax-csharp-essentials/book

Posted in ASP.NET, General | Leave a comment

Photoshop And VB.NET Window Services

Last night I learned how to create Layer Masks, Vector Masks, and Clipping Masks in Photoshop. I had to work through various tutorials and take some notes on everything that I had to figure out. For example, you cannot create a vector mask from a selection. You have to use the pen tool to create a path. I should spend more time studying Photoshop because it is more fun than struggling with code. It satisfies my creative urges. I do have a Photoshop Wow book with many cool tips and tricks. Unfortunately it requires hours of experimentation to learn how to do something cool.

Today I learned how to create a windows service using VB.NET. This took several hours due to some confusion over which timer object to use. I found many message board posts on the Internet about this issue but unfortunately the first tutorial I found did not mention it. I’ve been using scheduled tasks and web services for automation but a windows service would be easier to manage. I need to automate something on a dedicated web server where I will be able to install a windows service.

Posted in General, Graphics | Leave a comment

Cutting Down On Research And Studying

I’ve decided to cut down on the amount of new technology research and studying I’m doing. It is getting to be too time-consuming and scattered. I need to focus more on doing billable work. In particular, I am not going to spend any more time on security. I was getting too in-depth on SQL injection methods and venturing into Python and PHP because hackers tend to use those languages.

I’m going to cut down on CSS studying. I’ve learned a great deal more about CSS but it can get very involved when you factor in all the browser implementations. I’ll probably still pick up a few tips and tricks occasionally. I shall also spend less time exploring web design but I’ll keep my eyes open for any graphics element that looks cool.

As far as research goes, I will not jump on ASP.NET 3.5, Visual Studio 2008, or Silverlight. I’m still mastering ASP.NET 2.0 so I don’t want to confuse myself with another version. I think Microsoft is going a little crazy with their pace of development because they are planning a model view controller (MVC) framework for ASP.NET and so many other new features that nobody will be able to keep up with it. They just keep piling on the complexity.

However, I will continue to concentrate on the following technology; After Effects because I’ve already invested a lot of time in mastering it, ASP.NET 2.0 because I have many books to read, AJAX again because I have several books on AJAX.

Posted in General, Web | Leave a comment

ASP.NET 3.5 Released

I’ll blog about this here because everyone on the http://weblogs.asp.net/ site has already announced it. Microsoft has released the .NET Framework 3.5 which includes the new version of ASP.NET, known as ASP.NET 3.5. Visual Studio 2008 has also been released but SQL Server 2008 is still not available except in beta. I had the beta versions of Visual Studio 2008 and ASP.NET 3.5 installed on my home computer so I had a struggle to uninstall that and install the release versions. Fortunately I managed to accomplish this tonight. There were many packages installed by the Visual Studio 2008 Beta 2 and I had to uninstall all of them manually before I could get Visual Web Developer 2008 to install successfully. I’ve also managed to create rounded corners for the divs used by the Microsoft Expression Web template. This gives me a basic web site design that I can completely define through CSS. I also have the JavaScript to allow you to switch the CSS so you can quickly see a web page with different designs applied. I’ll probably put a small demonstration site on my web site under the portfolio section so potential clients can see proof of my graphics abilities.

Posted in ASP.NET, General, Programming | Leave a comment

Widescreen Monitor

Tonight I bought a HP w2207 Widescreen Flat-Panel TFT-LCD Monitor. I am really thrilled with it. It is as big as a TV set! I have it hooked up to my dual-monitor video card so now I have a dual monitor set up.

My old monitor is an IBM G70 17″ Color Monitor. It looks pretty small next to my new 22″ monitor. The color is going bad on it. I has blue horizontal streaks going across the screen. You can’t even buy CRT monitors any more. I did not see any in the stores.

The widescreen LCD monitor will be great for my After Effects work which is quite cramped on a small screen. You have to have your video composition window and the timeline window open at the same time which does not leave much room for your tools palette, the project window, and the effects window. I usually have to move windows around a lot to see what I’m doing.

I spend enough time at my computer to make it worthwhile to invest in better equipment. I also watch a lot of video sitting at my computer because I don’t have cable TV and rely on online video for my entertainment needs.

Posted in General | Leave a comment

Web Site Design

One of my immediate goals is to learn how to be a better web site designer so I can stop making excuses when a client seems to be more interested in a fancy web site design rather than the web application work I usually do. Of course, I don’t really need to bother because I have plenty of work already and I’m not likely to go begging for design work. But it would satisfy my creative side if I could create fancy web sites.I’m probably not that far off from this goal. I already know CSS and XHTML which makes it possible to easily apply a design to a site. It is considered to be the more professional approach to web site design. The old way of doing things was to create a web page entirely in Photoshop as one huge image and then slice and dice it into a mess of nested tables and numbered graphic files. You were pretty much stuck with that design because the table layout was determined by the page image and the graphics where like puzzle pieces. You could not replace a puzzle piece without messing up the image.

I think there are just a few tricks I still need to learn. First, I need to learn how create different textures. A popular style is to make the page background image a pattern with a faded color to give it a different texture than the page content. The idea is to draw attention away from the background. This can be done smartly with diagonal stripes and a gradient or it can be done very badly to look like hideous wallpaper.

I also need to figure out how to apply a color scheme. It is easy to find a color scheme because there are web applications to generate them from complementary colors but there are no guidelines for how to apply the color scheme. Gradients and drop shadows are also easy enough to create but you need to know how to use them judiciously.

Posted in CSS, General | Leave a comment

AJAX Control Toolkit, IT Toolbox, Flash Content

Yesterday I turned off JavaScript in my browser and saw what my web site will look like without JavaScript. You won’t see the Flash header without JavaScript and you will not be able to navigate to any of the web pages in the Flash menu. This is a mistake that many web sites make when they use Flash. They do not provide any alternative content to take the place of the Flash content. It is particularly important to provide your links in the alternative content. I expanded the text and added links in my header although you won’t see it if you are seeing the Flash loaded over it.I began to study the AJAX Control Toolkit yesterday. I discovered that I didn’t even have it installed. I had the AJAX Extensions for ASP.NET 2.0 installed but not the AJAX Control Toolkit which is sort of a library of common web controls. I created a toolkit project template and added all those web controls to my toolbar. Now I am going through the controls to find the minimal requirements for using them in a web page.I now have a blog at IT Toolbox where I will be writing about social media. IT Toolbox is a social networking site for IT professionals. Or should I say, it is a professional networking site? This is going to give me too many blogs to maintain because I’m also writing a blog on the Microsoft site for ASP.NET and my business blog here. However I can get many more readers on the Microsoft site and IT Toolbox provides some additional incentives and marketing support for their bloggers. There are now too many web sites built around user generated content and some sites now realize that they need to provide some incentive to their top contributors. I’ve seen this on YouTube were top vloggers have been made partners and offered exclusive ad revenue sharing deals. Boy did that cause a ruckus in the community!

Posted in Business, General | Leave a comment

Williamsport Media Developer – Site Redesign Is Finished

This afternoon I finally finished my web site redesign and published the changes. I changed the name of the site from Williamsport Web Developer to Williamsport Media Developer because I wanted to emphasize my interest in new media. I did not change my domain name though.

The new web site design is meant to kill my business. This may seem unwise but I’ve been getting too many projects from clients that can’t afford to pay for the work I do. I would prefer to work in the more lucrative field of video production. The online entertainment industry can afford to pay more than e-commerce web sites and the work is more exciting. I don’t expect to get a lot of work but that is alright because I have plenty of work to keep me busy now.

I did not create the Flash animation or the web site design. I bought a template from Template Monster.com. However I did have to edit every aspect of the template. I had to edit the Flash file to change the links, the text, and the hyperlinks. I had to edit the Photoshop file to change its text and to create a header and footer. I had to edit the web pages for content and to make the HTML markup better for the search engines. I also had to edit the style sheet to make the text easier to read. It was actually a lot of work for a small site. I used the SWFObject to embed the Flash content because it is more reliable than the code the template used.

I will continue to make changes to the web site but most of the additional work will be to improve the content.

Posted in Business, General | Leave a comment

Microsoft Expression Blend

I looked at the Microsoft Expression Blend web site today to see if it was anything that I would be interested in. Expression Blend appears to have some of the same features as Adobe After Effects with keyframe animation, support for vector graphics, and video and audio encoding. It can be used to create Silverlight applications for the web. It can also share development code with Visual Studio. In other words, Microsoft Expression Blend seems ideal for my multimedia projects. It even supports databinding with web services.

If you could combine databinding with video compositing then it would be possible to dynamically generate video based on a variety of data sources. For example, you could convert RSS feed headlines into title screens and intersperse them with video clips or transitions. A visitor to your web site could then see a different video every time they visited your web site with current information like the news headline tickertapes that appear on commercial TV news channels. Maybe you could stream dynamically created video. That would really be revolutionary!

Posted in General, Video Production, Web | Leave a comment

Blogging For Microsoft

Microsoft has given me a blog at http://weblogs.asp.net/rrobbins/, their community web site for ASP.NET developers. I’m excited by this because I do most of my work using ASP.NET and I have a lot of content in my technology notes which I can use. So far my blog posts have averaged 100 views which is probably better than this blog.

I hope to get some feedback on the programming topics that I blog about. The ASP.NET community web site is popular with some really talented programmers and they can give me expert advice on how to improve my work. I’ve been buying lots of books on ASP.NET and I can find the authors’ blogs on the ASP.NET community web site.

Posted in ASP.NET, General | Leave a comment

Netscape Navigator 9

The Netscape Navigator 9 browser is now available for download at: http://browser.netscape.com/downloads/. I didn’t think any further development work was being done on Netscape Navigator. Everyone uses Internet Explorer or Firefox now.

The most interesting new feature is that you can now use all of the Firefox 2.0 Extensions in Netscape. There are several Firefox Extensions that are useful for web development work and I was able to install all of them in Netscape.

Posted in General, Web | Leave a comment

Blog Matters

I have deleted my blog post about Hanna Auto Mart because it was based on a misunderstanding. Please note that a Captcha has been added to the blog to prevent spam comments. If you are unable to leave a comment, you should email me.

Next month I may be blogging on the ASP.NET community site. Currently I keep a journal on the IT Toolbox web site which is dedicated to IT Professionals. They also have blogs and a wiki but the site is mostly about professional networking. I plan to attend a developer’s meeting in Second Life because I’ve heard that some people use it for distance learning, social networking, and other virtual community business

Posted in Business, General | Leave a comment

Terry Roth & Another Pretty Face: Live From The China Club

Yesterday I got the Terry Roth & Another Pretty Face: Live From The China Club DVD I ordered. Terry Roth is a very popular vlogger on YouTube where he is known as Zipster. I see him every night in the NutCheese Stickam room. Terry is more famous now for being a YouTube celebrity. Some people may argue that nobody on YouTube is a celebrity but I’ve gotten rid of my cable TV and these are the people that entertain me now. That makes them celebrities in my eyes.

Terry used to be a glam rock singer. The DVD is to commemorate a reunion gig for his old band. It includes a Rockumentary and live concert footage. It is pretty cool to have a DVD featuring a performer that you see every night chatting with all your friends. The early punk rock scene was inspired by glam rock and apparently Terry met Deborah Harry, The New York Dolls, and Iggy Pop when his band played CBGB and Max’s Kansas City.

You can met a lot of creative people on YouTube where everyone is learning how to edit digital video and how to entertain people. There have been a lot of collaborative videos made and I can see this becoming a thriving artistic community. Sometimes it is like a Fellini movie full of freaky people and bad melodrama. You could also compare the scene to Andy Warhol’s Factory days when he made underground art movies with a lot of weirdos. I expect YouTube to become a significant part of our cultural history.

Posted in General, Vlogging | Leave a comment

CSS Hacks And Three Column Layout

As you can see, I have created a new WordPress theme using the web site design template I bought. The template was not intended to be used for WordPress so I had to reslice it in Photoshop to create a header and footer. I may not be very good at creating web site designs from scratch but I can certainly hack up anything I am given.

Today I added two pages to my Notes for CSS. I added a topic on CSS hacks for correcting browser bugs in their implementation of CSS and a topic on three column layouts. I had to edit the style sheet for this WordPress theme and I’m doing a lot of other work involving CSS so I needed more detailed information. I do have a VisiBone HTML Foldout for Syles but it is only good as a reference.

I am selling my old Visual Basic books on eBay. I am going to replace them with ASP.NET 2.0 books. VB6 is obsolete, replaced by VB.NET, and there are many books devoted to in depth coverage of ASP.NET 2.0. I have some Visual J++ books which I may as well throw away because nobody is ever going to buy them. I don’t like throwing books in the trash though.

Posted in CSS, General | Leave a comment

Web Site Redesign – Amazon Video Reviews

I have begun the redesign of my web site using the template I bought. I wish I could upload it now but I still have to write a lot of content and do a lot more work on it. My new web site will emphasize my multimedia skills instead of my programming skills because I would rather do something creative than technical. However, I won’t completely eliminate programming content. I will have some pages on scripting After Effects, coding widgets, and developing mashup sites using web parts and RSS feeds.

Today I had to edit the multimedia header which was done in Macromedia Flash. I don’t know Flash that well but I can edit text and add links. I wasted some time trying to get Flash to find a few missing fonts which were actually provided with the template and properly installed. I eventually gave up on that and just changed the fonts that are used.

In addition to redesigning my web site in such a way that potential clients will be less likely to seek my services, I also plan to double my rates for any new clients. I have been overworked because I charge too little. The clients I do get tend to be on a tight budget and refuse to pay me for the work I do. Therefore it makes sense for me to charge a lot more to cut down on my work load and attract clients who can actually afford web development.

Amazon now allows you to upload video reviews of the books and products you buy from them. This has me really excited because I think it is an excellent way to get the attention of an author. It is just another example of how online video is increasingly important on the Internet. I’m pleased that I have developed my video editing skills sufficiently to take advantage of all the wonderful opportunities that now exist.

Posted in Business, General | Leave a comment