Monday, June 16, 2014

Playing with MEAN

I heard about MEAN some time ago, and today I finally installed it and played with it.

There's lots of reasons why I wanted to get into using MEAN. It's all Javascript, which means, it's good Javascript practice for me. Every self-respecting Javascript-developer should try to build at least one Node.js backed app, right?

It calls itself a Fullstack framework. I like the sound of that. I think it means that I'll have to think and learn about all the pieces involved in building a web application. Hopefully, MEAN makes the learning curve a little less steep, yet doesn't hide so much that I depend on the framework too much and never learn anything.

Just to hedge my bets, I also have a simple app that I'd like to build for myself. If all goes well, I'll 1) build an app that I find useful 2) learn. What more can a developer hope for?

And finally - the results of day 1:

The Good

I got the application running on my local machine. I was also able to set up a database on MongoHq and then I deployed the app with Heroku. My app, which is the same as the starting test app, is up on http://pocketfeeder.herokuapp.com/#!/ .

The Dumb

For quite a while, I couldn't figure out how to log into the test app. After an embarrassingly long amount of time, I realized that I just need to register a username first. When trying new things, it's impossible to not feel dumb sometimes; you just have to embrace it.

The Frustrating

Googling things with the term "MEAN" is horrible. If you didn't notice, MEAN is a real/common word, and searching with it gives pretty shoddy results. I know MEAN is a catchy acronym, but searching for a more unique word, perhaps NEMA or something like that, would have made Googling a lot easier. 

The Conclusion

The experience was positive, and I plan on playing with it in the future. So, there is no conclusion, just yet.

Sunday, June 15, 2014

Android Studio - review after a few months

I've been using Android Studio for a few months now, and I've been enjoying the experience. Here are a few things that I have liked about this IDE.

I love Vim, and IdeaVim brings Vim to Android Studio as a plugin. I'm not sure how long I can tolerate using any IDE if it doesn't have Vim support. This isn't an indictment on any IDE that doesn't support Vim, instead, it's more of an handicap of mine.

A terminal is available as one of the windows in the IDE. I use it for doing quick unix commands like grep and git log. Screen real estate is always scarce, and having it inside the IDE is just a little bit tidier for me.

Viewing a layout in "Design" mode is great. You can drag and drop from a selection of Android widgets, which automatically updates the the layout xml. Conversely, if you update the xml layout file, you can see the changes in the layout in the design editor. This allows you to quickly browse through different widgets without having to manually type in names, and to see changes in real time.

Android studio allows you to create multiple run configurations. For any project, I create one configuration for running the app and one configuration for testing the app. I suppose it is just philosophical, but I like a single project to hold all of the stuff needed for running and testing.

One downside of moving from Eclipse to Android Studio is that it seems like an irreversible change. Maybe if you are an expert in migrating files, you can easily jump back and forth between them, but it seems like a one-way street to me.

After 6 months of usage, I have like using Android Studio. We'll see how I feel about it over some more time ...

Related Posts:

Android Studio - Preview of Future