Archive for the ‘projects’ Category

Ignite NM 2

Saturday, August 8th, 2009

The last Ignite was so. much. fun.!  So let we’ll do it again.  We’re looking for presenters who are passionate about a topic about would like to talk about it for 5mins.  Yep, just 5mins.  Ignite is fast paced, light, and a lot of fun.  

Ignite NM in Albuquerque was a great success, many thanks to all the great presenters.  Ignite NM dealt a lot with technology heavy subjects.  Technology is great, believe me I’m a geek through and through.  But we are looking to having more variety in topics for the next Ignite NM.

Have an idea you want to talk about?  Want to come, please RSVP?  See more info ignite-nm.com

Local Community Site. The Start. – Our Los Alamos

Friday, July 31st, 2009

logoA while back I was talking with some friends about how to find things about Los Alamos NM online.  What business are in town, when are they open, where should I go?  What is a good place to stay, eat, or shop?  Where should  I move, what is available?  What is there to do in the small town?  That is how Our Los Alamos was born.  

I’ve lived in Los Alamos, almost all my life.  I join the small town with the different feel.  I cant say that I’ve ever found another place like it.  So part of Our Los Alamos is about giving back to that lifestyle, to show others what it means to me, and help them connect with this area like I have.  

This is the first project that from conception to creation has been solely my doing.  The design, the logo, the brand, and the identity is all original and all very important to to me.  It like the project that is never quite good enough, because you want everyone to enjoy it as much as you have.  

I’ve recently started to let the word out, slowly to begin, about Our Los Alamos.  It is light on content, but more is being added every week.  Please take a look, and give me your feedback.

Twitpic

Saturday, April 11th, 2009

Twitpic is a great easy way to share photo via Twitter.  A lot of twitter clients including desktop and iPhone/any mobile client support uploading pictures to twitpic.  It has gained the largest market share of any twitter centric photo sharing site (according to TC)  

Why am I talking about Twitpic?  Well I thought it would be cool visualize all the photos being shared on twitter, in realtime.  To that end I’m polling twitter searchtwitpic - flarify every 3 secs for the term “twitpic”  and publishing them to a xmpp pubsub server.  I built a super simple web interface that subscribes to that pubsub node, and displays new images as soon as they are received. (Technically there is a 5sec delay to let the image load, which makes the display run smoother.)  That is the largest delay, 5secs.  Once anyone uploads a picture to twitpic there is <10sec delay.  

I also include retweets of twitpics, so yes you will see duplicates, sometimes many on the same page, if that image is very popular, and being commented on / retweeted via twitpic. (look out for Miley Cyrus pictures taking over at times)

Check it out, let me know what you think.  I’m thinking about either adding a feature to reply via twitter to the pictures, or to discuss them via group chat on the web page itself.  Suggestions?

http://twitpic.flarify.com

How do you interact with your clients? – Issue Tracking

Monday, December 29th, 2008

Ok, I’m going do a series of this posts on “How do you interact with your clients?”, I’ll share what I do, what I like about it, and what I dont, and maybe some new tools to try.

In any project issue tracking becomes needed. You might be working alone on a project for a client, and they find things in the demo that they would like changed, those are issues.  You might be working on a large project with a team, and have QA personal when they find bugs, those are issues.  When the team or person working on the UX doesnt like the interaction, that is an issue.  Or maybe you just find an issue all on your own (maybe a few issues) track those!  Notes about resolutions can be useful, even more so when you are working on 5+ projects.

Where to track?  

Bugzilla – Open source, the de-facto bug tracking for open source projects, well at least at mozilla the creators of bugzilla as well as many other open source projects. Though I have seen less and less projects using Bugzilla lately.   Pros:  it can do just about anything, a million features, easy enough to add anything else you need / want.  Cons: you have to setup, you have to host it, too complex for most clients to use, too clicky. Update: look like there is a new version of bugzilla, 3.2.  I havent tried this one yet, but it does promise a greatly improved UI.  I hope so.

Email – I have done this.  And it can work with limited success.  It is better then nothing, but at the same time has a lot more time involved.  At least you get a history, though it might be in a less query-able format.  This seems like the place many projects start.  But as the spreadsheets that you start emailing back a forth get larger, this becomes far to hard to keep up to date.  Pros: easy to setup, everyone already knows how to use it. Cons: data will be out of sync quickly, it is harder to search and query, i.e.  what are my current open issues?

Basecamp – This is a nice project management tool.  Great interface, excellent workflow, and a simple set of features that is everything you need.  Issue track is missing a couple of things here though.  Mostly because Basecamp tracks todos.  You lose source control integration, issue states / statuses.  But I find that for many clients this is the simplest and easiest to use.  This is often the best choice for client interaction,  It sure beats email.  Pros: easy to learn, most people will understand right away.  Cons:  it might not have every feature you are looking for in issue tracking.

Lighthouseapp.com – These guys are newish, but have created issue tracking that makes sense.  It doesnt get cluttered by a million features that are never used, but it still has the features that count.  I’m using this for my startup.  We can track milestones, issues that need to be completed for each milestone, general issues, and even create some wiki like pages for easy information / idea sharing.  Their interface has a very good feel, easy to use even for your first time, and you are never left guessing how to do something, it is obvious.  Pros: great interface / UX for issue tracking.  easy to learn.  Cons: Might be more than a client wants to deal with.

Which method of issue tracking to use?

That depends on you and your client or team.  For a development team I heartily recommend lighthouseapp.com.  If you have a lot of client interaction in your issue tracking, it might be better to use basecamp.

Anyone like something else?  I know there are a lot of companies in this area and some really great services, so what else I’m I missing? 

 

Filter HTML

Wednesday, October 1st, 2008

Many websites take input from users.  If your website is going to take that input a redisplay it somewhere on the site, you really need to filter your html.  If you are lucky the requirements for your site will let you strip out all html code, if your not lucky you will have to filter it.  

Why Filter

First, why accept html at all?  because it is easy enough for users to work with, for a WYSIWYG editor to work with, and it is what you are going to be displaying, really it is best all around in terms of your site’s performance and your user experience.  

Ok, so why filter?  Well there are some hurtful people out there, and some people that dont know what they are doing, both can make you look bad.  First the people that dont know what they are doing will forget to close their tags(leaving a <b> tag so the rest of the page can be bold), and using other markup that will ruin your design.  Then the hurtful people will come in a add some javascript to destructive ends, compromising the security of your site.  And keep in mind that script doesnt have to live inside a <script> tag.  it can be in many attributes, such as onmouseover for example. combine that with some inline style that enlarges and positions text to cover the whole page, and boom!  the hacker just got their malicious script to run on your site without a script tag, not good for your users.

How to Filter

We understand the need, now how do we accomplish the task?  3 main points.

1) Whitelist tags and attributes.  Create a whitelist of allowed tags, and their allowed attributes.  Whitelists are better then blacklisting.  Cause they should be shorter,  they are easier to maintain, and more restrictive.  A comprehensive blacklist could take a long time to make, and whenever a browsers decide to add support for new tags, your blacklist requires updating.  If you use a whitelist, it is shorter, and wont break as new tags are supported.

2) Balance is needed.  Your page can be ruined if the user submitted code includes some </div></div>  Or what if the user opens a tag that they never close… maybe  <center>  What will your site look like then?  You need to add balance to your user submitted html.  Balance all tags.  Also keep in mind tags that self close, <img> or <br> for example.  and to be XHTML compliant make sure they include the self close <br />

3)  Proper Nesting.  Improper nesting in certain browsers can lead to trouble similar that that of unbalanced tags.  Check for <b><u>text</b></u>  

Here is the Code

So enough talk here is some links to helpful code to get this done:

Also check out a project called Tidy, it has a lot of this functionality built in, and is available for many languages.  - HTML Tidy Project Page

So long, and be safe…Filter your Html.

Las Vegas — ISC West

Thursday, April 17th, 2008

The largest security convention and expo that I have ever seen.  It was also the first that I have seen, but at 26000 people in attendance I think it has to be close to the biggest.  So why was I there?  Aquila Command.  We were at the expo in booth 39030 along with Eagle-i.  Eagle-i as I have talk about before is a realtime video analysis platform that we (Aquila Command) work with to provided the “complete solution.”  They do the analysis of the images, we make sure that user (guards, managers, etc.) are notified to the event.  We do that by means of a window client, and window mobile client, email, and sms.  There were a lot of impressive technologies and companies there at the expo.  And I was thoroughly humbled.  But there are still important selling points to our product.  I think we can build on those strengths.  Focus on that part, and build an application might be useful in other markets as well. 

I’ll try to update this post by the end of the week with pictures of vegas/the expo.  I’m just too lazy to sync my camera.  Has anyone ever used the eye-fi card? Because I was thinking about getting one.  

Project 1 – Aquila Command.

Friday, February 8th, 2008

From the latin word for Eagle, comes Aquila Command. A remote alert and control platform based around Eagle-i, a video surveillance system that tracks changes between frames and then alerts the users. (www.jemeztechnology.com)Aquila Command’s function is to take in a stream of images from Eagle-i process who gets them based on shift of the users/location of the alert, and send that out to client software, currently designed for windows XP/Vista and windows mobile 6. Of course there is also the ability to lookup images and review past alerts. And with almost any project there are a 100 other features that I would like to add, but I dont have the time right now.I’m doing this project for a percentage. And I will tell you that there are some projects that I enjoy, and that I might work on without payment, but this would not have been one of them. But to make money you have to spend money they say, so here I am spending my time and some money. This project has helped keep my .NET skills sharp, and added to my knowledge in certain areas, like the pain of windows mobile development. But that is a whole other post or 5 other posts worth of links, tips, and stories of what I did wrong.Just to touch on the status, we are at a point where we are almost ready to ship, (RC2). We are still testing, fixing a few things, and giving the makers of Eagle-i a chance to make notes. We are at the point where we can do some nice demos, and impress some people. Now just to ship! hopefully.