preload
Mar 16

Check out my latest project: http://www.clubloc.com

Its an ongoing project of mine that’ll let you listen to music while seeing cool visualizations in canvas. I’ll be updating it soon to let users have their own playlists and share them with friends. Eventually I want it to have a chat capability that lets you meet local people and share what you’re listening to.

I side step the legal barriers to this by using a neat trick, if you can figure it out props to you.

It gets its inspiration from the notorious demo by 9emelents at: http://9elements.com/io/projects/html5/canvas/

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Slashdot
  • Technorati
  • Twitter
Tagged with:
Jan 27

Today while coding my first Facebook application running on Google App Engine I was getting odd errors related to time from the datastore.

The problem was that Google App Engine’s time is always running from Coordinated Universal Time (UTC), even when you use something like:

1
2
import datetime
datetime.datetime.now()

How you should and I have compensate for this is taking the difference of the time you want to UTC time in order to shift the time to the time zone of interest:

1
2
3
4
5
import datetime
time = datetime.datetime.utcnow() - datetime.timedelta(hours = 5) # for East Coast United States
time = datetime.datetime.utcnow() - datetime.timedelta(hours = 6) # for Central United States
time = datetime.datetime.utcnow() - datetime.timedelta(hours = 7) # for Rocky Mountains United States
time = datetime.datetime.utcnow() - datetime.timedelta(hours = 8) # for West Coast United States

This will give you the correct time in your time zone

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Slashdot
  • Technorati
  • Twitter
Tagged with:
Jan 21

I got stuck this morning with an invalid sender error from my deployed Google app engine application (you can see the errrors in the log in the dashboard if it just says “Server Error” in the title tag) and I had to search around for a while for an answer.

I eventually figured it out and I’ll post my solution here just to make it easier for others:

  1. Make sure the email in your main settings.py is valid and yours/part of your groups.
  2. Also make sure that that email is included in the developers in the dashboard of the application. (https://appengine.google.com/)
  3. If its not:
    1. Log into the dashboard with the original user
    2. Go into the developers section and invite them to also be an administrator to the application

    This simple walk through doesn’t only pertain to those that use Google app engine, it applies to all users of Google app engine.

    Hopefully it will save someone some time.

    Share and Enjoy:
    • Print
    • Digg
    • Sphinn
    • del.icio.us
    • Facebook
    • Mixx
    • Google Bookmarks
    • Blogplay
    • Slashdot
    • Technorati
    • Twitter
Jan 14

Today I was searching around the web trying to figure out how to set the line thickness in HTML5 Canvas.

I stumbled across this great cheatsheet:

http://www.nihilogic.dk/labs/canvas_sheet/HTML5_Canvas_Cheat_Sheet.png

It had the information I needed, after setting the context you do something like this to make the lines thicker:

1
drawingContext.lineWidth=4;

Then go ahead and do your stroke:

1
drawingContext.stroke();

The line should now be more thick.

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Slashdot
  • Technorati
  • Twitter
Tagged with:
Jan 14

It seems pretty easy to notice how worried Microsoft is about Google. Just watch your favorite prime time television station for a bit and you’re sure to see ads for Bing, Microsoft’s new search engine trying to compete with Google. Well thats Microsoft trying to drink Google’s milkshake … What is Google doing to drink Microsoft’s?

  1. Google Apps Are Rendering Microsoft’s Exchange Server Email Obsolete, Even For Businesses


    Google Apps are superseding Outlook and Exchange server for businesses with their web based email, instant messaging and calendar. They’re all easy to use, shareable and available from anywhere. Did I mention they’re significantly less expensive?

  2. Docs Still Doesn’t Have All The Features As Office, But Its Getting There


    Google Docs could use a little work in terms of competing with office. Nevertheless, they are easy to use, fast and get the job done. They are just a mild foreshadowing of the office applications on the web we have yet to see. This includes Microsoft’s own Office Live which may save them in this space.

  3. They Have Created Their Own Browser (Chrome) And Are Starting To Get Significant Market Share


    Chrome is a solid browser that destroys Internet Explorer at supporting standards and is even implementing aspects of HTML 5 faster than Firefox (websockets)

  4. Google, Firefox And Safari Have Vastly Improved Javascript Performance

    Javascript performance has recently exploded with the exception of Internet Explorer … big surprise. This will help all those applications that leverage Javascript, which will probably end up powering most of our future applications. Html 5 web workers also allow for multi-threading javascript further closing the gap between javascript performance and non web based languages.

  5. HTML5′s Canvas Will Allow Any 2D Interfaces/Fonts To Be On The Web Without Flash, Silverlight Or Any Other Proprietary Plugin

    Developers no longer need some fancy authoring software, or user’s with proprietary plugins in order to create great two dimensional interfaces, animations and applications. Get ready for the torrent of canvas powered apps.

  6. Google Has Integrated 3D In The Browser


    For those that say that you can’t have a truly web based os until you get 3d graphics in the browser, wait no more. There are now many options to get 3d in the browser and more coming. Google’s O3D is simply one of many fast 3d graphics plugins now available.

  7. They Provide Most Of The Revenue For Firefox


    In 2006 Google provided 85% of Mozilla’s revenue through an agreement where Google is the default search provider setting on Firefox. Its been a few years but the contract was extended in 2008 to be valid until 2011. This means that Google has very strong influence over even more of the browser market and can try to convince Mozilla to integrate the technologies it wants to see in the browser.

  8. Google Is Coming Out With Their Own Operating System.


    This is the obvious “massive straw” (… or should I say Wendy’s straw?) for sucking down the market share of Microsoft’s core products. As everything moves on to the web we’ll no longer need that clunky, slow, proprietary behemoth that is Windows. Instead we can hop on our computer as fast as we turn on the tv, navigate to our favorite web applications and get the operating system out of the way. As is pretty evident, there is pretty much nothing a windows application can do that its cloud counterpart can’t. The tools for those cloud applications are disproportionately made by Google.

  9. Google’s Not Doing The Work, You Are


    Google’s not doing the work, or fighting this war. Its simply making the weapons. They’ve recently developed more open source apis and tools for the web than I can shake a stick at.

  10. They Have Cojones


    Finally sick of dealing with the Chinese government’s bull, Google finally took a stand and said it will provide non-censored access to its search engine or leave the country. They did this in response to an attack on their servers where several Chinese dissidents GMail accounts were compromised. I wonder, who would be hacking Google’s servers looking for information on Chinese dissidents? Seems to me we all know what really happened with this one. Thank You, Google, for taking a stand.

Run Microsoft, Run! Google has set up the dominoes … its only a matter of time.

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Slashdot
  • Technorati
  • Twitter
Tagged with: