Ahhh this Blogging Thursday thing was meant to be weekly, I promise I’ll try to force my lazy self to write more often ;).
This is PART 2 of my series When u really make a Web App. Today I’ll define, what actually is a Web App - at least in my understanding - and further point to some other resources about the topic.
When I started working for my last employer - I started working on two projects each with Java full stack and a web front end - I used to tell people, when they asked me,
What are you actually doing on your job?
- I’m developing web applications.
Ah okay, web sites, interesting. Good I met you, I need a home page.
- Eh no, I’m no web designer. I program applications. Stuff I’m developing is similar to Facebook or Gmail. You know, I mean applications you access through the web with your browser.
Now people tend to nod in agreement and smile. And I know, that they don’t have a clue what I am actually doing. I can literally read it from their face.
After a few of this situations appeared I decided to change my answer to,
- I’m developing Enterprise Applications.
After that new answer people still don’t have a clue at all, what I’m actually doing in particular, but at least they don’t mix it up with web design any more.
But the essence from this story is, that long before I thought about this blog entry I tried to kinda tell non-technical persons what the term Web Application means to me.
For me back then from a technical perspective a Web Application was an application which UI front-end is rendered in a web browser. For non-technical people, this is a web site which you interact with, or a program you access through the web browser. One of the simplest things possible would be the good old guest book.
Last year I gave a talk at JSUG about Modern Web App Architecture. To summarize the modern approach in contrast to the already known, what changed? First thing you’ll notice, their name got a face lift. They aren’t called applications any more, now we talk about Apps :).
But seriously, I was sick of making Java Server Faces stuff, when everywhere you look on the Internet you see single page sites like Facebook, Gmail & Co.
Why are single page sites cooler than the previously used approach, where thousands of separate sites are connected with links?
It feels a lot snappier, when content gets dynamically loaded in your site and no whole new web view must be requested and rendered before you get your information.
It feels breezy, it feels more like a native application than a web site.
For that reason basically my talk came down to the fact, that you try to emulate as many characteristics of native operating system applications within your web browser which leads to a better user experience.
The rebirth of the fat client within your browser so to say,
but this time not this RIA (Rich Internet Application) shit advertised by Adobe which is powered by Flash.
This time without proprietary plug-ins.
Okay, what are the most basic and important aspects you would expect from a native application in consideration of user experience (but not limited to UX)? While keeping Web Apps in the back of our minds.
next points depend more on the application’s features
Let’s add some recent mobile smart phone-ish influences and look through a mobile app lens.
Now after having bullet points for important characteristics of desktop and mobile apps we should add the special web sauce. Yes, there is something the web can do better or let’s say, achieve easier.
But in the end, what really saves the day is, that
My conclusion is as follows. First there is no fucking difference between a Web Application and a Web App. Further when you access an application through your browser or any kind of web container without the need of plug-ins, than it’s an Web App. If you really wanna be proud of yourself making a Real Web App you should implement as many of the mentioned bullet points as possible and of course reasonable.
But don’t just take my word for it, see what other resources say about the definition about Web Apps:
The difference between an app and a website is that you can install an app and more thoroughly integrate it into your device. It’s not a bookmark — it’s part of a system. Open Web Apps hold that great promise.
Ubuntu Web Apps enable developers to create web applications that run in web browsers, but act as if they are native applications. They provide close integration to the Unity shell for functions such as launch, notifications and controls.
Hey it’s Blogging Thursday again! Yay!!!
Today almost no pair blogging with Thomas - he was at the Uberall App Congress, check out his coverage. And now it’s time for When u really make a Web App PART 1!
Last month I gave a talk about Firefox OS and making apps for it at a local meet-up group - called Vienna JS. If you are interested in the topic and wanna get a jump start, feel free to check out my slides. One feedback I got was,
I’d like to see a more comprehensive presentation of html5 for this device.
Huh, it nails it down - at least my interpretation about it is as follows - everybody talks about HTML5, its features (mostly one at a time and without any functional real world context) and Web Apps in particular, but there is not a single sample, showcase, archetype or - sadly - real world example covering or including all things possible or at least reasonable that satisfies me.
Besides Todo MVC there are of course other very valuable resources (I’m not saying that there is nothing good teaching you this stuff, it’s just my opinion that there is no sound “go full stack thing” right now out there). Just check out the following links. You probably already know all of them, when you are working with the Open Web stack right now.
Okay mission real Web App set, but I know from experience (I failed trying) that integrating all the latest cutting edge web APIs is a huge effort. Last year I gave a talk about modern web app architectures at the JSUG Vienna - another meet-up group. Back then, my aim was after the presentation to life code a rich internet app with many of HTML5’s latest features.
What I really did was a short single page app (using the History API) served directly by a CouchDB - a simple couch app so to say :).
Let’s get back to the topic, to carry out a real Open Web App! It shall be sliced into one main feature or Open Web API per post. But to get started and choose what’s necessary and important, we have to do a sometimes kind of boring exercise, define what defines a so called Web App…
But that’s next week’s story, stay tuned!!!
Let’s start with a few words about me :)
My name is Raphael Stary and I’m a software engineer, entrepreneur and lastly open web game developer from beautiful Vienna, in the heart of Europe.
Of course I do a lot more, but with this blog I wanna focus on my current profession, which -at the moment- defines me the most.
So I had the idea about writing my own blog now for many times
(really funny is that this is actually a repost from my last attempt of starting to blog this January from blogger.com),
but I never managed to write more than an entry post
(THIS TIME IT WILL BE DIFFERENT MARK MY WORDS!!!1one)
… maybe it wasn’t the right time for me back then.
Things change and while getting more experienced at what I do for living,
now or then I come across really interesting and tricky challenges - worth sharing ;)
Beside the technology things I wanna blog about, I wanna share my findings and struggling while bootstrapping a start-up - I’ve heard often that it’s very therapeutic to write about it.
if you’re interested follow me on twitter.com/RaphaelStary
or get in touch with me via your favourite social service:
This time I’ll write a meta blog post. Yes you heard right, a blog post about blogging itself - crazy shit man :D.
It all started in my mind … reading a lot of blog posts about building & running a start-up. And while reading a great post by Joel Gascoigne, he’s one of the founders of bufferapp.com, I came across the following quote
“Work harder on yourself than you do on your job.” - Jim Rohn
It says it all for me.
I’m trying hard, inspired by the buffer founders, the fab founders and many other successful entrepreneurs, to work on myself, form habits like for example practising a few times a week and so on. And I think one important point within this context is blogging!
It’s expressing yourself to the rest of the world, sharing insights and knowledge about stuff that might be interesting as well for some other folks or simply practising to write.
Then I read about the term pair blogging, actually Andreas Klinger (Austrian entrepreneur) was looking for a peer via twitter. And he described it as writing a blog post while your counterpart is writing one as well. Besides getting shit done you can discuss thoughts with a like minded person, ask for feedback and in the end you can proofread each others texts. Sounds nice :). I read again about it in some social status updates from Thomas Schranz (founder of blossom.io), where he mentions doing pair blogging with different people.
(So I’m not referring to the definition where you share a single blog with another host, co-host or co-author a blog so to say)
Back to the future, last week I met with Thomas Dori in a cool coffee shop in Vienna for some kind of pair working, I was coding on a current game prototype and he wrote a blog post. Besides the fact that Thomas is one of my best friends and I like his company, he’s a kick-ass js programmer and I hate to work just on my own. In addition it’s a positive change of scene to work a day in a different location. So a win-win-win-win for me.
We both enjoyed the relaxed day in the hip cafe, so we decided to do it again and started the Blogging Thursday! We’ll try to meet each Thursday, every Thursday in a different coffee shop in Vienna, and just write blog posts. If you haven’t noticed it until now, this is my first contribution to our Blogging Thursday ;)
Till next #BloggingThursday