Quick Project IDEA: minification plugin
HAH, its a pun because its an idea for a plugin for Intellij’s ide, the brilliant IDEA.
Ok, I know the proper way to handle minification and obfuscation of scripts and styles is in the build process. That way you have manageable code when editing and efficient code on your server. The problem is that not all projects require this level of sophistication, and sometimes all I really need is to minify one or two js files.
What’s needed first:
- A simple plugin for IDEA so I can right click on a file then click minify and boom, it minifies the file in place.
What could be done later:
- integration into the IDEA build process (which I don’t really use anyway, we generally just use maven from the command line, but for those who do).
- mark files as “minified for deployment only”. This feature would copy the file to keep for manageable version (the editing version), and then the file with the original file name would become a minified version of that file on every save, such that whenever you deploy or even manually copy the file with the original file name elsewhere that it is minified.
Anybody else notice this obvious CSS bug on Techcrunch?

It’s been there for at least a week, viewable in firefox and chrome. They added the “Classics” link to accompany their amusingly self-congratulatory classics post but forgot to account for it in their styles. Very simple fix:
#header_left {
width: 710px; /* instead of 700 */
}
#header_right {
width: 270px; /* instead of 280 */
}
#newtwitter
The recent redesign has been a long time coming. Search was touted by tech experts as being Twitter’s greatest value for two years (given all that real-time data) while the search input itself was difficult to find on the home page and a pain to use. It took Twitter, whose function and service screams Ajax, a couple years to get around to adding a little bit of simple Ajax to its UI. If you wanted to read a singular Twitter stream and post simple updates, you went to Twitter dot com, and if you wanted to effectively harness the power of lists, favorites, url shorteners, image/video previews, etc. you went to 3rd party clients. Twitter has attempted to bring in as many of these features as it could and bring more power users back to Twitter dot com. It also highlights certain features prominently in a way they weren’t before to attempt to introduce them to more casual users. Did it succeed? As is the case with most redesigns, the answer is balanced with victories and areas where they fell short.
Victories:
persistent search bar up top: search is always visible, always easy to get to. I’m increasingly seeing the compose symbol they use as being a pretty universal “compose” icon.
endless scroll: this is one of their best additions. No longer do you have to click to see more tweets. You can simply endlessly scroll down as they add more and more old tweets to your stream. This has been done before, but I’ve never seen it work so smoothly. Its even smooth in IE7.
Speaking of IE, they used “-moz-border-radius” for the curved corners that are everywhere in this design in the right way. There is no hack to make rounded corners work in IE, the design simply looks fine without rounded corners and degrades gracefully. The same goes for the animations for opening and closing the detail pane.
Detail pane: They’ve made a huge space investment in this feature. I like extra info on my tweets, image previews, finding out about other users etc.
Making the detail pane so big blocks out a huge portion of the background (the biggest customizable part of your Twitter page). I love this, but I know a lot of users will hate it. People who use it for marketing tend to plaster obnoxious messages on their backgrounds. Trying to eradicate this is a good thing. It means less MySpace, and more focus on the text of your profile description and a recognizable image or logo for your avatar1. Avatars are a much less obtrusive way of customizing a web presence than a background.
Failures:
Detail pane: It’s too big, and too big to be filled with content the way it has been. I’ve seen a lot of complaints about how loud the new design is, and I agree. I think the detail pain could have been smaller or at least smaller most of the time. I personally really like it, but as I’ll explain later, it’s not right for Twitter dot com.
Twitter has designed for a particular user type. It depends on what kind of user you are as to whether or not this is a victory or a failure. This is a shame, but an inevitability. A lot of users are going to be overwhelmed by the new design. A lot of users I know don’t use lists, trends and especially favorites. A lot of people would be more comfortable with a simpler interface, especially the mainstream audience. I think it would have been a better idea to keep the detail pane smaller but give it the capacity for richness with opt-in features to fill its space, enlarging it if necessary. My biggest message for Twitter is: power users are still using 3rd party apps, keep Twitter dot com simple. The people who really want to see the trends in their local area aren’t afraid of hitting a “settings” button or a “soup up my detail pane” link.
Designing to a particular user type indicates something about their strategy. Twitter spent so much time with such limited functionality on their home page that an ecosystem of 3rd party apps grew around it. They inevitably were going to try to bring people back to the home page because that’s the only place they have currently figured out a way to make (even a little) money. Adding features to the home page is a much nicer way than, say, shutting off the pipes to 3rd party developers, which they have every right to do (while it would upset a lot of people). The remaining option is to include whatever money-making strategy they choose into 3rd party participation, which I think is what’s going to happen.
Making Twitter dot com a smarter and better site doesn’t change the game. I think that Twitter has the capacity to be something bigger than the 3rd party apps that use it, not just something that competes alongside them. I can’t wait to see what happens when they figure that out, because they have a talented team that put out this redesign in a short 4 months. Overall, is it an improvement? Of course. It’s a much more useful and usable site, but maybe they could have gone simpler.
- I hate the term “avatar” for the little user icon that we use on every site. It makes me think of animated gifs of blinking anime characters or something out of second life instead of a tasteful logo or image of a user. We need a better term to distinguish these things from one another.
how to name your app
My whole life I’ve had trouble coming up with good names for things. My high school band cycled through numerous names, all of which are near embarrassing to repeat. I’m currently trying to name this blogging client I’m working on, as well as trying to brainstorm a brand name for myself under which I would release this app. Names are tough, and this article helped.
The takeaways from this article are the bullet points he lists at the bottom and the tools he used. The three things your name needs to be:
- easy to pronounce
- says what you do
- memorable
The only obvious thing to add to this list (which one of the tools addresses), is that your name has to be available. If the dot com for your company or app is already registered or especially if its already occupied by another service, you might have trouble branding that name effectively. My thinking is: don’t go dot me or dot org or dot info (unless those are appropriate to what you’re doing) just to use the name you want. The only appropriate secondary option for an app or company to dot com is dot net, if you ask me. Just keep moving, you’ll find something.
The tools he suggests and that I’ve been playing with to brainstorm are wordoid and domize. I would also suggest a thesaurus. I haven’t stumbled upon any obvious winners yet, but playing with tools helps keep your mind open and brings a level of physical participation in your brainstorming that is superior to leaning back in your chair and stroking your chin.
blogging client development started
I’ve started work on the blogging client I posted about before. I’ve chosen Adobe Air as the platform upon which to write the app, as it will allow it to be used in all major os’s with no issues. Also it will allow me to use the technologies I’m most accustomed to as a front-end developer (html/css/javascript(jquery)).
Also, here are some amazing tools out there that already do many portions of the features I plan on including.
- showdown is a pretty darn impressive, the markdown to preview functionality is pretty much exactly what I am hoping to include
- highlight.js for syntax highlighting
Current status: Adobe Air project up and running, starting to implement Tumblr api. First draft of wireframes for app done. Gonna do a revised version and get to my designer by the end of the week. The first version will have a limited set of features. Eventually it would be cool to include other blogging platforms (wordpress, etc.), but I have a lot of work cut out for me before I get to that point.
resources for noobs
A friend of mine recently expressed an interest in learning web development and some basics of computer science. Since he’d be starting completely from scratch, I pointed him here and here.
I used Opera’s dev resources when I was starting and it did a great job of making “how the web works” clear to someone who really didn’t know anything at the time (me). I used MIT’s lectures when I wanted to brush up on the fundamentals of algorithms while gearing up for job interviews. It’s important to return to these fundamentals every once in a while, but usually it takes something dire like a job interview for us to be willing to do it.