Warning: Cannot modify header information - headers already sent by (output started at /home/jtolle/public_html/blog.kyletolle.com/index.php:1) in /home/jtolle/public_html/blog.kyletolle.com/wp-includes/feed-rss2.php on line 8
Thoughts of an Eaten Sun » Software http://blog.kyletolle.com Kyle Tolle of nullSIX - Technology, science, goings-on of the world, and anything else that interests my thought-process model. Wed, 20 May 2009 05:49:18 +0000 http://wordpress.org/?v=2.9.2 en hourly 1 Twikini Releases v1 http://blog.kyletolle.com/twikini-releases-v1/ http://blog.kyletolle.com/twikini-releases-v1/#comments Wed, 20 May 2009 04:44:50 +0000 Kyle Tolle http://blog.kyletolle.com/?p=537 Listen to this Reading

Kyle Tolle reading ‘Twikini Releases v1′

Update:

As per the instructions on the Twikini website, I emailed CJ about this blog post. Within minutes he responded and sent out my serial number for v1.0. I can also happily say that it installed and connected to Twitter perfectly. I entered the serial number and am good to go. Very excited to test out all the new features I’ve not had a chance to see yet!  I take back what I said about the customer support: I’m quite impressed.

Twikini is a Windows Mobile Twitter client written in C++.  It’s lightweight, quick but is decently powerful. Twikini v1.0 just released and I’m hoping to give it a try soon.  I had downloaded v0.6 and really enjoyed it, but v0.8 never did work. I had upgraded because of DM (Direct Message) support.  Same bones with v0.9. Keeps saying there’s no network to connect to. I am hoping that I can get v1.0 to work.  I’d recommended Twikini in a tweet and Aoss tried it out.

A screen shot of Twikini

A screen shot of Twikini

Trinket Software, the people who make Twikini, just introduce a pricing plan for the product, and I’m hoping to get a copy for writing this blog post. Did I mention I’m crossing my fingers that it works this time? I’ve @’d Twikini several times about my issues, but haven’t ever heard back. Customer service could be a bit better…

Have you heard of Twikini? Have you tried it out? What are your impressions? Have any of you had the same issue with getting it to connect to the internet? Please tell me I’m not alone!

]]>
http://blog.kyletolle.com/twikini-releases-v1/feed/ 0
Update on OSU Email http://blog.kyletolle.com/update-on-osu-email/ http://blog.kyletolle.com/update-on-osu-email/#comments Tue, 19 May 2009 22:42:14 +0000 Kyle Tolle http://blog.kyletolle.com/?p=521 Listen to this Reading

Kyle Tolle reading ‘Update on OSU Email’

What Happened

Last night I wrote the post “Forwarding BuckeyeMail” and tweeted it to 8Help, OSU’s IT service desk.  In just a few short hours, I got a tweet from 8Help, a comment from Chuck, and a detailed email from 8Help, which is included at the bottom of this post.

From the email, we see there is actually an article about forwarding BuckeyeMail, but it’s not listed on the main FAQs. Instead, it’s listed on a page of a huge number of other articles, which is why I missed it.

I’m a bit confused because they say BuckeyeMail isn’t required, but if they’re getting rid of WebMail, what other choice do you have? I guess it’s not required in the same sense that WebMail isn’t required: You can forward your email to another account, so you don’t have to use it?

What I Learned

From the feedback, I’ve gathered some insight on this whole process.

  • OSU still uses your name.##@osu.edu address for all mailings. Whew!
  • Setting up BuckeyeMail changes your osu.edu email redirect policy, and forwards all @osu.edu mail to @buckeyemail.osu.edu automatically. I really wish they would have an option to keep this from happening when you’re actually setting up BuckeyeMail, or at least a more apparent notification that this user-given value will be overwritten.
  • Forwarding BuckeyeMail isn’t as clean a process as I thought it was.
  • There’s still hope, because we can avoid most of that mess by just changing where our @osu.edu address forwards.

What To Do Now

So here’s a list of new steps to take:

  1. Again, forward @osu.edu email to another account of your choice. This re-establishes the  forwarding you may have had before. It bypasses the BuckeyeMail system all together.
  2. Since there is a chance someone could decide to email your BuckeyeMail address, there’re a few options.
    • Have Gmail check your BuckeyeMail. Since there won’t be much mail going here, it’s okay that Gmail only checks once an hour.
    • Set up an autoresponder in BuckeyeMail to tell the sender you’re not using that address. This feature only works in IE though, which is stupid. (I hate MS and their IE only garbage. It doesn’t even “degredate” to other browsers. It just doesn’t work.)
    • Send your BuckeyeMail to another account. There are a number of caveats with this method that I didn’t know before:
      1. Forwarded email is sent as a “Fwd:” from your BuckeyeMail account instead of transparently passed along, as I’ve come to expect Forwarding to mean. This archaic “Forwarding” is automating you opening up the email, hitting Forward and typing in the other address – so it comes from your @buckeyemail.osu.edu account. Addresses from the original email are in the body of the email, but it kills the work flow of just hitting reply, since it’s sent from your buckeyemail.
      2. Redirected mail completely kills the email headers, so you can’t tell if it was sent to anyone other than yourself. Not sure why this would even be useful since it modifies the original message by killing the headers.

Why I Screwed Up

I thought forwarding from BuckeyeMail was a transparent process, because before I set up the inbox rule I had resubmitted the @osu.edu forwarding form, and then tried sending test emails to my @osu.edu address.  I thought this form was obsolete, however, meaning I thought all OSU mail went to BuckeyeMail regardless. Since this isn’t so, the test emails never actually reached the BuckeyeMail servers, so I didn’t see the wonky forwarding setup there.

Here’s the email I got from 8Help. Very detailed and concise – These guys rock!

The Email from 8Help

Kyle,

Thanks for sharing your blog post with instructions on forwarding Buckeye Mail. We have a similar article we’ve had available for just under two weeks at http://8help.osu.edu/4093.html that goes into a little more depth and includes some warnings.

Just to clarify – students are not required to use Buckeye Mail – all official university communications should be going to your tollename.##@osu.edu address for you to read, and from there forwarding to @gmail.com.

If someone (another student, perhaps, or someone you e-mailed from Buckeye Mail hitting reply, etc.) “guesses” and tries to mail you directly at tolle.23@buckeyemail.osu.edu, however, that wouldn’t be forwarded using that process. There are a couple options for taking care of messages that might be missed due to this.

One is setting up Gmail to POP your messages from Buckeye Mail, per http://8help.osu.edu/4070.html

Another is to set up an Automatic Reply in Buckeye Mail basically saying “I don’t use this address, make sure to mail me at name.##@osu.edu (or even Gmail directly if you prefer).

Another is to setup Inbox Rules that automatically forward or redirect all incoming mail to another address, per http://8help.osu.edu/4093.html

The warnings for this are spelled out in the article – but because of your blog post, I just want to make sure you’re aware that messages *forwarded* int his manner will appear “From” your Buckeye Mail address – NOT the original sender, so you won’t be able to just hit This option behaves just like hitting forward on a message from an e-mail client. The Subject is also appended with “FW: ”

If you choose to Redirect instead of Forward, there are other issues – the original sender and subject are preserved, so that you can hit reply and have it go back to the sender … BUT… if there were other recipients on the message (other To or Cc addresses), those are NOT preserved – so hitting reply-all would only reach the original sender – you won’t be aware of other people who may have been a part of the conversation.

That’s a lot to digest, so hopefully it all makes sense – let me know if you have any questions.


Max Treboni
IT Service Desk, OSU Office of Information Technology
Request forms and knowledge base articles are available on the web at http://8help.osu.edu
Service hours are available on the web at http://8help.osu.edu/1691.html

]]>
http://blog.kyletolle.com/update-on-osu-email/feed/ 1
Forwarding BuckeyeMail http://blog.kyletolle.com/forwarding-buckeyemail/ http://blog.kyletolle.com/forwarding-buckeyemail/#comments Tue, 19 May 2009 05:19:04 +0000 Kyle Tolle http://blog.kyletolle.com/?p=499 Listen to this Reading:

Kyle Tolle reading ‘Forwarding BuckeyeMail’

UPDATE:

Please see my ‘Update on OSU Email‘ post for the feedback I got on this post and what I learned about how the BuckeyeMail system works. Fixing the forwarding is way easier.

Ohio State is rolling out it’s new BuckeyeMail service. They’re releasing it in phases, and I only just got the chance to sign up for it.  Annoyingly, I had to muck around with resetting the password and wait several days for my account to unlock (from trying what should have been the correct password too much).

When I finally logged in today, I found that I had missed several days of emails because the @osu.edu address now forwards to the @buckeyemail.osu.edu address, which I couldn’t log in to.

For the webmail system, there was a web form you could fill out to forward your email to another account. The settings are not migrated from webmail to BuckeyeMail, however. You’re going to have to set it up on your own again.  It’s not overly hard to find this or set it up, but there is no 8Help BuckeyeMail FAQ for this. I decided to write this tutorial to show you how to set up BuckeyeMail to forward to another email account (like Gmail).

This is not the same as setting Gmail up for POP access, which 8Help does have an article on. Forwarding the email allows you to get it instantly in Gmail instead of waiting for Gmail to check the BuckeyeMail servers for new mail. It’s my preferred method. Now, on to the tutorial!

1) Go to “Options”, in the upper right hand corner of the page.

1-options

2) Go to “Organize E-Mail” in the left side menu.

2-organizeemail

3) Under the default “Inbox Rules” tab, click the “New” button.

3-newrule

4) In the new window, select “[Apply to all messages]” in the first dropdown.

4-applytoallmessages

5) Select “Forward the message to…” in the second dropdown.

5-forwardthemessageto

6) A new popup appears. Type the email address to forward to in the “Message Recipients”, “To—->” field. Click “Ok”.

6-enterforwardingaddress

7) The email address is turned blue and underlined. Just click “Ok” again.

7-forwardingemailinserted

8) The popup closes and you’re brought back to the previous window. Click “Save” to save the rule.

8-clicktosave

9) The rule is saved and now all your email is forwarded to the address you supplied!

Now you’re ready to go about your normal business. Gmail beats Microsoft’s offering anyway.

Hope you enjoyed this tutorial!  Please leave me feedback on whether you were able to follow these steps, if you encountered any problems along the way, or you just love me!

]]>
http://blog.kyletolle.com/forwarding-buckeyemail/feed/ 1
Call One Constructor from Another in C# http://blog.kyletolle.com/call-one-constructor-from-another-in-csharp/ http://blog.kyletolle.com/call-one-constructor-from-another-in-csharp/#comments Fri, 30 Jan 2009 08:42:49 +0000 Kyle Tolle http://blog.kyletolle.com/?p=53 I am working on an assignment for Professor Cawfis’ C#/.NET class I am taking this quarter at The Ohio State University.</plug> The assignment asks us to write a hierarchy of Tanks for a water plant. For a specific tank, we want a constructor that will take a parameter volume. But we also want to have a parameterless constructor that will create a tank with a default volume for the tanks in this system.

Here’s what we initially have:

using Liter = System.Single

namespace KyleTolle.Tanks
{
    class Tank: TankBase
        {

            public Tank()
            {
                // Want this to create a tank of a default volume.
            }

            public Tank(Liters maximumVolume)
            {
                this.Volume = maximumVolume;
            }
    }
}

All we need to do to have the parameterless constructor create a tank with a default value is have it call the other constructor, passing in a default value for the volume. But how do we do that?

It’s simple. To call another constructor in this class, we just add a bit more code before the method’s body braces:

public TypeConstructor(): this (parameters) { }

Want to call a constructor in the base class? Just change the previous example to say “base” instead of “this”:

public TypeConstructor(): base (parameters) { }

This could be helpful if the parent class has a constructor with the desired behavior.

So to call another constructor in our Tank example, we end up with:

using Liter = System.Single

namespace KyleTolle.Tanks
{
    class Tank: TankBase
        {

            public Tank() : this(100F)
            {
                // This creates a tank with a default volume.
            }

            public Tank(Liters maximumVolume)
            {
                this.Volume = maximumVolume;
            }
    }
}

I decided to write this post because it wasn’t immediately apparent to me how to call one constructor from another. Google did lead me to the solution, but I give a bit more concrete example of what this can be used for.

See Also:
C# FAQ: How can one constructor call another

]]>
http://blog.kyletolle.com/call-one-constructor-from-another-in-csharp/feed/ 0
Microsoft Tag: A Colorful Take on Barcodes http://blog.kyletolle.com/microsoft-tag-a-colorful-take-on-barcodes/ http://blog.kyletolle.com/microsoft-tag-a-colorful-take-on-barcodes/#comments Tue, 13 Jan 2009 09:09:37 +0000 Kyle Tolle http://blog.kyletolle.com/?p=38 I started using ceTwit today as the Twitter app for my HTC Touch Pro.  There will likely be a post in the near future about that, but while reading the developer’s blog I stumbled across a post about Microsoft Tag.  So what is it?

Thoughts of an Eaten Sun Tagthe Tag for this blog

Microsoft Tag is a type of barcode (wikipedia), more specifically a High Capacity Color Barcode (HCCB).  Barcodes are meant to store information in a way that computers can easily read.

We are most familiar with UPCs, which are on almost every single product we purchase.  UPCs are groups of white and black stripes which, when read, represent numbers that correspond to product information.  The UPC format is only one dimensional, because only lines (one dimension) are used to encode the information.  This significantly limits the amount of information that can be stores in each UPC.

Microsoft’s Tag builds on top of the UPC model in pretty interesting ways.

  • Barcode is 2-D – The barcode is now two dimensional, which means that significantly more information can be stored in the same amount of space.
  • Use of Color – The HCCBs are also, as the name suggests, printed in color.  The introduction of color makes sense, but could also be a bit sketchy, as discussed in the caveats.  Color means even more information in the same space. Wikipedia states 3,500 characters per square inch.  That’s a lot of information!
  • Shapes – Instead of traditional lines or boxes, Tag uses colored triangles.  They could expand this in the future to use an even greater variety of shapes.  Different shapes could yield an even greater information density.
  • Stores Different Types of Data – Tags can serve as URLs, contact information, text or even phone numbers. The possibilities for this are huge too.  The viewer can follow the URL to a website with more information, automatically add contacts to the phonebook, display more text to read, or quickly call the phone number.  This is really convenient for the user, since the reader can automatically take action.

Creating a Tag is really easy.  Just go to the Tag website in order to sign up and start creating tags immediately.  The web interface is really easy to use.  I made the tag above in literally just a few seconds. Disclaimer: making it into a GIF to put in this post took extra time.

You can download a Tag reader for your mobile phone’s browser from gettag.mobi.  They have versions for iPhone, Windows Mobile, Palm, Symbian, Blackberry, and other supported phones.  Currently, the reader only has support for Tag, but it will likely read other barcodes in the future.  The Tag reader also supports sharing and storing tags; you can tell your friends, or save it for later.

Possible caveats I see with Tag:

  • Tag website beta is free, for now. The services will probably be made into a paid service in the near future.  The service being free now might lead to a frenzy of people testing out Tag, but if it goes commercial, general use will probably decline.  The commercial market looks to be where this is targeted anyhow by the looks of this demo video.  I think it would be awesome to have a Tag generated for each blog post, or a Tag sticker for a website, but if it’s not free, I likely could not justify the cost.
  • Use of color could restrict Tag’s adoption. Black-and-white only, or other medium which have no support for colors, cannot use this version of Tag.  Here I am really thinking of newsprint.  Magazines, flyers, and other advertisements will have an easier time using the technology.  Who is to say they won’t release a B&W version. They could even have color Tag readers be backward compatible.  This is all my speculation though.
  • Focus on print media. The website only allows one to export a Tag to PDF, XPS, or WMF.  I certainly understand that barcodes are easy ways of giving information to consumers, but think about being able to give your contact information to someone just by displaying your Tag on your phone’s screen and have them snap a picture of it.  There is no need to send SMS, email, connect via Bluetooth, verbally give the number, etc.  This would be great for use on business cards!  I can’t currently think of as many uses on websites viewed on a laptop/desktop, but getting the contact/phone number quickly is certainly one.
  • Must have internet connection. The Tag reader must connect to a web service each time it reads a tag.  This is seemingly innocuous, but for people without data plans on their phone, or those in a poor reception area, this inhibits use.  Granted, the reader does have the option to store the Tag for possible later use.  This is actually a plus for producers.  Server access for each Tag allows possible tracking of all types of statistics for the use of your Tag.

Unsurprisingly, Tag has competitors.  The list of 2-D barcodes on Wikipedia is definitely not short.  QR Code (wikipedia) is another 2-D barcode, but it lacks color.  I am pretty sure I have seen QR Code (or something very similar) in use on UPS shipping labels.  Before now, I really had no idea what they really were.

A plus for Tag is the backing of Microsoft.  The giant certainly has a lot of resources to help Tag’s agenda.  The ISAN-IA recently picked up HCCB for standardization, so we could possibly see Tag on products or advertisements (other than Microsoft) very soon.  Microsoft makes it really easy, as mentioned earlier, for anyone to create Tags for free (as of now), but they also have a robust tracking section on the site.  This will allow publishers/producers/creators/whatever to track information about their Tags.  Hopefully, we will see some APIs for developers to integrate Tag support into existing applications.

This is a very cool service from Microsoft and I will keep an eye out for any Tags to scan!

Related:

Microsoft Tag – kosertech

Microsoft Tag: Microsoft’s own 2D barcode

]]>
http://blog.kyletolle.com/microsoft-tag-a-colorful-take-on-barcodes/feed/ 3