Logo
ManuelSchoebel

Meteor - Meetup Protocol by Daniel Dornhardt

It was a small but merry round which met on Tuesday, the 29th of April in the Unperfekthaus in Essen.

The following topics have been discussed, in an informal conversational structure.

Introductory Round

Everybody introduced themselves, duh! :)

And everybody seems to have at least in part a technical background, which proves to be a solid base for the interesting conversations later on.

The big topics

manuel-schoebel.com/blog

Manuel has a Blog, where he blogs about Meteor development. I'm sorry I didn't know that before! It's good. :)

Manuels Blog

(We also found out later that he is in a good-natured competition with Stephan Hochhaus about the Search Engine Rankings for the term "meteorjs") :) .

The page crater.io was mentioned as well for the latest news in the meteor world.

The @MeteorJobs Tweet-Bot and: Eat your Fibers, Kids!

Stefan Hochhaus recounted his experience using Meteor to build a Tweetbot, using the "twit" meteor package to access twitter. The bot itself can be found here: github.com/yauh/tweetbot and it twitters using the twitter handle @MeteorJobs. It automatically retweets tweets that use the hashtag #meteorjob so it's easier to find new job offerings on twitter!

He also described a problem with using Meteor in conjunction with external asynchronous APIs on the server side. After the server side meteor code has finished, the fiber it ran in is stopped. That leads to a crash as soon as a callback function is called which needs to access Meteor functionality (like database access), because Meteor code needs to run in a fiber.

A quick writeup about what a fiber is: (Fibers and Threads in node.js – what for?)[http://bjouhier.wordpress.com/2012/03/11/fibers-and-threads-in-node-js-what-for/]

The workaround is to either start a new fiber around the Meteor call or to use a meteor internal wrapper method like _wrapAsync (Example: Asynchronous function in a Meteorjs method call)

MVP's, lean startups, and the Build / Measure / Learn - Cycle

We talked about a keyword in Manuels Résumé, "MVP", which stands for "minimal viable product" and is a specific term for quickly implementing a working product which can than be developed further if it seems to provide value.

See further down in "(Lean) Startups, Parallel Entrepreneurs and Addresses to Start Up" for further details on Manuels and some of the other participants' involvement with multiple groups and places in connected to the "startup scene" in the Ruhr Area and Essen and Cologne especially.

The Humongous MongoDB Group in Paderborn

Tobias Holz invited us to the MongoDB - Group in Paderborn, where he hopes to gather a critical mass of participants in terms of MongoDB interest and brainpower. He also has plans to connect with the larger MongoDB community and explained that he'd like to invite people from the Company behind MongoDB as well.

High Quality Hosting by Uberspace

Tobias Holz also recommended Uberspace for high quality pay-how-much-you-feel-is-appropriate hosting provider, especially for trying out new and experimental projects. They provide shell access and lots of support and room for experimentation.

Meteor UP

Up and away! :)

In regards to the question of deploying Meteor Projects quickly and easily, Manuel told us about https://github.com/arunoda/meteor-up - which seems like a good solution... Nice!

From the readme:

Meteor Up (mup for short) is a command line tool that allows you to deploy any meteor app into your own server. It supports Ubuntu 12.04 or higher servers from any Cloud Infrastructure Provider.

Mobile Application Development with Meteor

Talking about the state of App Development using Meteor, specifically using PhoneGap, the common consensus was to

a) wait for and use the famo.us framework... which looks nice, i'm looking forward to read a bit more about it: Heise.de article about famo.us b) Maybe have a look at the Titanium SDK - I didn't check into it too much, but I am not sure how easy or hard it would be to couple with a meteor backend. To me it looks like a full-fledged wrapper to write Mobile Apps with JS...

Testing

The current state of testing Meteor.js - Apps is as of yet not shaken down to a few complete solutions it seems.

http://testingmeteor.com/ - has been recommended by at least two of the residents of the Meetup, and seems to become a resource to get a grip on the current state of affairs, but for now it seems to me that I just plunked down $29 for nothing to read so far... :) JK (just kidding), I'm looking forward for the next PDF / Build which should be sent weekly.

TESTING!

CMSs, Admin Generators, Forms, CRUD, etc...

While it is often dandy to code up fresh MVPs like there's no tomorrow, sooner or later the requirement might arise to code up some Admin interfaces.

A CMS (Content Management System) may also be useful to manage different areas of a page and provide an overall structure to more complex sites and applications.

These Projects were mentioned:

The EventedMind Scaffolding tool:

https://github.com/EventedMind/em - which is a meteor project boilerplate builder, and can also generate code for things like controllers and routes.

Houston - A Zero-Config Meteor Admin Interface:

https://atmospherejs.com/package/houston

  • NICE! :) - Lots of potential here, I'll definitely look into this one

Azimuth - CMS:

http://azimuthc.ms/ - a fully working Meteor CMS - looks nice. Thanks @Stefan Hochhaus for reminding me.

There also seem to be two more CMS's on the way, in different stages of development:

https://github.com/alisalaah/meteorcms https://github.com/Differential/meteor-cms

  • which I hope to review sooner or later.

I would also like to see a standardized interface-definition for the different pieces of data of which a CMS would most likely consist, which then would allow different backends, front-ends and extensions to be pluggable and interchangeable.

Maybe I'll draft something up and try to see how far the different CMS's have come in the different areas and which features they provide already.

Special Tip for Form Elements

Manuel let us in on a little secret of his:

Step 1: Create templates for the different kinds of form elements one might use, including labels and Message Fields for the Form element.

Step 2: include those, with some configuration for the form information, in the main form template.

Step 3: Simple reusable form elements!

These can than be used interactively and reactively (of course!) in different forms. NICE!

IronRouter

IronRouter is Manuel's Router of choice and he provided more than a handful of practical tips on how he uses it.

This included things like different events, Pre- and Post-Route Hooks and different ways of using it for applications. He also has multiple articles in regards to the IronRouter on his blog: http://www.manuel-schoebel.com/blog/

Meteor SEO

... look at this... The Meteor SEO Package recommended for easy SEO - https://github.com/DerMambo/ms-seo - is from our very own Master-Of-Meteor-Meetup Manuel Schoebel! :) Nice!

Have a look and read an introduction on his blog if you are interested in SEO for Meteor-Apps:

http://www.manuel-schoebel.com/blog/meteor-and-seo

Games, asm.js and the birth and death of JavaScript

When speaking about writing games and similar interactive content, we spoke about Unity3d and rendering in JavaScript.

I mentioned asm.js as a highly efficient target for compiling all manner of code (there now exists a LLVM backend for compiling to JavaScript / asm.js; that means that theoretically the whole world of unix, emulators, and then, running on those emulators, basically everything) can now be compiled to javascript.

There's an interesting talk I mentioned, which poses as a "looking backwards over history" talk from the year 2035: https://www.destroyallsoftware.com/talks/the-birth-and-death-of-javascript - he describes exactly that, JavaScriptCeption... JavaScript as the Bytecode of the future.

And, lo and behold, on the same day we met in Essen, Unity published examples of two new demos and more information about a new build-platform, using exactly the technology discussed at the meetup and in "The Birth and Death of JavaScript". It's interesting I think - at least if you like to hear a bit about the nerdier side of JavaScript... :)

Here is a link to emscripten, the asm.js compilation backend for the LLVM bytecode - with more demos and information available: https://github.com/kripken/emscripten/wiki

(Lean) Startups, Parallel Entrepreneurs and Addresses to Start Up

Manuel is an advocate of quickly prototyping and testing new ideas. There is already some theory between the quick iteration cycle idea of creating lean startups (which also is book, famous in the movement, by the way: The Lean Startup by Eric Ries. Manuel blogged about Lean Startups too - and why Meteor is great for implementing lean startup projects: http://www.manuel-schoebel.com/blog/meteorjs-the-perfect-match-for-lean-startups .

You can read more about Lean Startups here: http://en.wikipedia.org/wiki/Lean_startup and on many other places on the web if you search for the keywords "lean startup".

One good address, especially if you're from the Ruhr-Area or cologne is http://www.startplatz.de/ - a place with coworking and room-for-hire, but also with a big focus on startup development, and with many partners, events and pitches to grow and kindle the fire in the hearts of potential startup-founders and startup-supporters.

And, of course, you're welcome to join the Meteor Ruhrpott Meetup if you're around - visit and you can ask the residents about lean development and the startup scene in the Ruhr Area.

Conclusion

There are many interesting tools arriving for and from Meteor. There are at least as many opportunities to develop business ideas, fueled by the reduced cost and development time to prototype interesting projects with Meteor while still having the option of scaling them later on, building up on the existing codebase.

JavaScript - The way of the Future

And of course people are more important than technology - that's why it's important to be in contact with technology-interested peers to build something together and learn from each other, and it's nice to have such a harmonious and friendly group of participants as we had so far.

The Startup-Scene is here, growing and providing opportunities for Meteor and Node.js - based technologies.

Now there's only one thing left to do - go on and code - there is no try (Only DRY :) ).

And, of course, once more: don't be shy and join us at the Meteor Ruhrpott Meetup if you like.

©️ 2024 Digitale Kumpel GmbH. All rights reserved.