A strong personal brand is beneficial on many levels. At the core it differentiates the designer, developer, marketer, etc, from the rest of the pack within crowded disciplines. It functions as a self-promotion agent that works for the practitioner 24/7/365 ultimately ensuring this person becomes a magnet for new and interesting work opportunities.
A while back I purchased a Logitech Comfort Lapdesk for Notebooks, which, in general, is an excellent product. So excellent that my wife has basically taken ownership of it! As it turns out, it really wasn’t for me, since I needed something… flatter.
So yesterday I purchased a Logitech N315 Portable Lapdesk, and I think it’s going to work better for me since it’s a very low-profile platform on which to work, and it’s flat, not angled. The angle of other lapdesk products causes problems for my wrists when I’m seated, so this works out much better. And it’s very well insulated, so my lap no longer feels as if it’s going to spontaneously combust when my Macbook Pro is resting on it. Score!
OK, so I’m not sure if this works in Vista but it definitely works in Windows 7.
I have grown very tired of the Aero-style Alt-Tab behavior in Windows 7 (only took 4 weeks to get sick of it!), and I really wanted to revert back to the “classic Alt-Tab” behavior and make it my default. The former is easy. The latter requires a little regedit hack:
- Create a DWORD called “AltTabSettings” in \HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer
- Set its value to 1.
- Test Alt-Tab combination. The Windows XP-style AltTab behavior should have returned.
Thanks to a comment from “barbudo” on this page for the answer to this mildly-perplexing problem (scroll down to the comments).
I found this list recently and thought it might be helpful to keep around for reference. Having open source applications available means that you can learn quite a bit from the successes of others by looking at the source and seeing how they accomplished their tasks.
It can be tough to learn how to develop, especially when it comes to finding complete examples. That’s why I put this list together. Each of these open source iPhone apps is not just open source, but has been in the app store, and all but one are in there right now. So if you’re looking for an example of some real apps here they are.
Interesting research being done using a webcam as a different type of input device – a controller for your desktop:
With the ingress in the market of products like Nintendo Wii, Apple iPhone and Microsoft Kinect, developers finally started realizing that there are several ways a person can control a computer besides keyboards, mice and touch screens. These days there are many alternatives, obviously based on hardware sensors, and the main difference is the dependency on software computation. In facts solutions based on computer-vision (like Microsoft Kinect) rely on state of the art software to analyze pictures captured by one or more cameras.
The other day I was attempting to build and test a simple example Phonegap application for Android on my Windows box. Unfortunately, I was unable to successfully execute the “droidgap” call using ruby and Git Bash.
It would kinda build out a structure and then would bomb when attempting to build out the .jar file.
Thankfully, Stack Overflow to the rescue (again)!
The important point is that, evidently, the droidgap build script needed to call “ant.bat” on Windows (as opposed to just “ant”). This was even with the path to ant set in my PATH environment variable.
Thanks again, Stack Overflow.
No, the Tools are Not Free.
Just as a commentary, the hurdles to get to point zero with building an Android application – and by extension Phonegap – is just a bit ridiculous. I’m dreading the thought of having to do updates as well, but hopefully some time will pass before that’s necessary. “But they’re free!” some will say. Actually, it’s not really true. When you consider the amount of time it took to download all the various-and-sundry parts of the environment and get them all installed and (hopefully) working, it’s at least a few hundred dollars worth of time spent on what should be a one-or-two step installation process.
Seriously, doing the same process for iPhone is much simpler, and I’ll be interested to see how things pan out for Windows Phone 7 development.
For some reason I edited the iPhone wireframing files article a while back and added the individual PDF file links. Unfortunately they 404ed since they were the wrong URL.
This situation has been rectified and the individual PDF files can now be downloaded by themselves (though I suspect most people have been just using the zip file…).
After weeks/months of work I have submitted my first app to the iTunes AppStore!
So, now we wait for the approval/rejection to occur (hopefully not the latter)…
In truth, the amount of work can actually be measured in hours or perhaps days, with the actual building of the app being the least time consuming part since this is a very basic application.
I had no idea going into this the amount of time that would be spent on the preparation of the application for submission. At this point it is probably the most daunting aspect of the process — the development of the product was the simple[r] part. I expect that it will get easier the more apps I create, and having gone through the process once already, at least now I know what’s involved and what some of the potential gotchas are.
It’s tough to go it alone, but for now that’s what I have to stick with, having a day job and no capital to back up my projects or to hire other staff, much as I would like to be able to focus on this alone. It seems to me like you really need a team of three (+/-) people to make a really decent app in a timely fashion. Ideally, I think I could get by on a relatively lean three-person team and would consist of:
- Me. (duh)
- product design and specification
- UX/interaction design
- iPhone development/programming
- Web site programming (if required)
- graphic designer (my graphic design skills are limited, and I’m really slow at what I do…)
- iPhone interface eye candy
- Icon design
- Web site design
- Deployment/distribution (and marketing) engineer
- Manages distribution for testing, arranging and managing alpha and beta tests.
- Handles all iTunes AppStore preparations (SKUs, marketing materials)
That last one is kind of squidgy, but it was the stuff that really made me insane on this first go-round, and having someone – even just part time – to collect the resources and manage the iTunes part of the equation would be really helpful. This persone would be someone who has done it a number of times and knows all the little gotchas. There are many.
Thankfully, I chose to create an app that was very small and not real complicated to construct. Otherwise, this app would never have gotten submitted! However, since it was an app that I personally needed (but didn’t realize until after I needed it), I felt pretty strongly about just getting it DONE!
I will announce when the app is approved, if it is approved. In the meantime I will be planning out the next update for NineOneOne, in addition to the next app in line…
Seems that I occasionally need to trigger the postback on an UpdatePanel, and invariably I forget between usages.
Since this particular post from Encosia has saved my bacon on more than one occasion, I shall share it here (and for my own future benefit):
I’ve noticed a lot of discussion lately regarding methods to refresh an UpdatePanel via client script. This is very easy on the server side, of course. You can just call UpdatePanel.Update(). However, on the client side, the most common solutions I’ve been seeing just don’t feel right. Many will advise you to use a hidden button control inside the UpdatePanel, manipulated via button.click(), to trigger a partial postback of the UpdatePanel. While it does work, I never have been able to get past the kludgey nature of that solution.
In a nutshell, we can use the __doPostBack() method:
Luckily, there’s an easy method for triggering a postback targeted at the UpdatePanel: __doPostBack().
As long as the event target of a __doPostBack() call is an async trigger of an UpdatePanel, the ASP.NET AJAX framework will intercept the postback and fire a partial postback instead. For purposes of demonstration, I’m going to add that to the OnClick event of the container div:<div id="Container" onclick="__doPostBack('UpdatePanel1', '');">
Now, clicking anywhere in the UpdatePanel will trigger a partial postback, targeting the UpdatePanel. Since partial postbacks follow the full page lifecycle, this will fire UpdatePanel1_Load and update the Label’s text.
Really liked this article, which is a little reality check for web usability. Especially neat was the UX version of “The Golden Rule” at the end of the post.
Creating designs that are intuitive and easy to use is something we should continually strive for if we want our sites and applications to be visited and used by as many people as possible. Ultimately, making those sites easy, as well as enjoyable, to use is a critical part of helping them be successful and it starts by abandoning outdated opinions on what users can, and cannot, understand. It starts by giving our users some credit and realizing that they are not ‘idiots.’