Posts Tagged ‘today.goto.dk’

User groups@GOTO Aarhus

Tuesday, October 11th, 2011

The last couple of years, GOTO has been hosting meet ups for most of the local user groups in Aarhus, giving them the chance to “lend” a favorite speaker or two to give a presentation, participate in a panel or just spark off new discussions in the user group.

This year was no exception. 9 different user groups held meetings in the Musikhuset, Bora Bora and at the Trifork offices near Musikhuset. Approximately 350 participants had preregistered, but as Tine from the GOTO crew says “once registration had closed, of course quite a few people showed up anyway, and as we had enough sandwiches for everyone, they were let in as well”.

GOTO Today took a little tour of the different groups, from the exclusive Mercurial User Group and its 9 participants to the almost 100 people in the .NET User group. Hopefully the pictures convey a little bit of the atmosphere.

Keep up with the speakers

Tuesday, October 11th, 2011

The GOTO speakers are very active on Twitter so we thought we wanted to tell you about a list of this year speakers on Twitter and a list on this years speakers.

You might find great little tweets like this from @olabini

“We’re making a lot of progress, especially with the version numbers” – about Chrome #gotocon

Or get inspiration for your what your next session should be like this tweet from @simonbrown

Looking forward to Linda Rising’s talk at #gotocon

If you really can’t get enough, there’s also a list of all time JAOO and GOTO speakers.

Take a look, they are really great!

Lars Bak on Dart

Monday, October 10th, 2011

With humbleness and anxiety we met with the great Lars Bak. One of the masterminds behind the Java Hotspot Virtual Machine and the V8 Chrome javascript engine. The fact that we, at GOTO Today, had the chance to interview Lars only 3 hours after he and Gilad had revealed everything about the new exciting Dart programming language was almost unbelievable.

Preparing for this interview we gathered a lot of questions through this post. But we had to do a very hard prioritization of these questions since we were only promised a 15 minutes interview. Enough introduction – if you want to read more about Dart goto one of these links:
http://dartinside.com

http://dartlang.org

http://dart.googlecode.com

How does Google plan to govern Dart as an open source language?
There’s a spectrum of models from the “benevolent dictator” to a “full standards player” where you contribute the initial release to e.g. W3C and then let all development happen in an open committee.
The open source aspect of Dart will be handled exactly like the V8 project. If you’re a new developer on the Dart project, you will have to send in patches, which will be approved and added to the code base. When you’ve done that successfully a couple of times, you will be able to be promoted to committer.
There have to be some kind of process to govern the development to ensure the language is not destroyed.
All of Google’s own development will happen in the open source repository; every change we make will be visible the same second it is committed.

The license for Dart is very open, you can take the code and close source it, if you want to.

As for forming a committee, it makes no sense at the moment to put the development into a committee. Building a new language from the ground cannot be done by committee – we all know how well Design by Committee works.
One of the reasons for bringing Gilad onto the project is his experience in language design. He knows how to ensure sensible semantics from the start. If you look at the website, there’s already a draft for a specification available, and it’s a pretty good starting point.
Right now, there’s only one stakeholder. Later on, when there’s more parties involved, it may be a natural evolvement, but you need the basic ideas properly carved out before you can start evolving.

When you design a language, you always have to design trade-offs into the language. What will you do to make sure that five years from, some other “Lars and Gilad” will have to start all over and make yet another new language?
We try to be pretty inclusive in the trade-offs. There’s no such thing as an all-purpose language – you can’t take just any language and make it do everything.
Many of the constraints have to do with backwards compatibility. For us, being able to start from a brand new language makes a lot of things easier. With that in mind, we have done a lot to make sure, that you can still run Dart programs in existing browsers.

Actually, I hope that in many years from now, someone will come along and say “we’ve got something even better”. The more attempts at innovation, the better the result.

The language is optionally typed. This seems to be the type system of choice for new programming languages. But what about performance? Isn’t easier to create a high performance VM with a statically typed language? Do you use the types as compiler optimization hints?
You have to understand that the types are interface types, not implementation types – so the runtime cannot use the type information for anything. The types are simply thrown away during compilation.
But the last few years, we have gotten lots of ways to make dynamic languages run fast – such as inspecting implementation types at run time and caching that information.
The flexibility you gain from optional typing – “some things are types, some are not”, that’s really cool. It allows you to experiment in some corner of the system, and then when you’re done, you can wrap it up by providing the necessary type information. And of course, if you’re a big enterprise, it’s perfectly possible to setup policies that allows experimentation, but requires all type errors to be eliminated before release.

How much effort will be put into the garbage collector?
We make virtual machines-  that’s what we are good at, so I ensure you there will be a good garbage collector. Right now it’s just a simple copy collector, but there’s plenty of room for improvement. One of the big opportunities is that Isolates have completely separated heaps, so you can do independent garbage collection in each isolate’s heap.

If we were to make a mobile app using Dart, what would we do about sensor integration?
There’s absolutely no difference in the possible DOM access from Dart and from JavaScript, so you have all the features you need in JavaScript – DOM and HTML5 gives you what you need.

The current release is a Technology Preview. Do you have a timeline indicating when there will be a more mature release?
It’s about making it right, time isn’t as interesting. We will release a beta version when it’s ready, but that requires things like a more mature virtual machine.
But what we have now is no toy project, it is a sincere attempt at moving web application development forward. We have the ressources to push things and improve the language as quickly as possible, and a track record of releases with good quality.

What is your biggest aversion, if any, in modern software development?
(… Lars thinks for quite a while)
What I try to do is change, what I don’t like. All my career has been about participating in projects showing that you can take something and make it better. V8 shows, that you can make a seemingly slow language run fast.

What I dislike the most in programming is lack of transparency. Let me give you an example from Java: Class initialization is spontaneous execution of code. You can’t a program using class initialization blocks and see from the source code when the class initialization will be executed. To add to that, there’s an implicit synchronization taking place, so in a multi threaded program, you can actually have deadlocks arise from the initialization code. Something like that is impossible to debug.

In dart, we’ve tried to ensure that it’s always apparent what code will execute when.
For you as a programmer that means that you’ll have less surprises.

What are speakers saying about Dart

Monday, October 10th, 2011

While we are waiting for the approval of our interview with the Google Darts developers we have found some tweets from the speakers for you to read.

Alex James(@adjames)

I liked the type system ideas in #dart. Particularly the ‘innocent until proven guilty’ idea.

Fred George (@fgeorge52)

#gotocon Dart very clean. But road is littered with failed languages that are just cleaner. It needs to do some type of app better. What?

Jake Archibad (@jaffathecake)

Optional types in Dart are a good idea, but no reason JS couldn’t have those. We saw that in AS2 and it did nice things for tooling #gotocon

Dart: Cynical view – http://xkcd.com/927/, fairer view – JS could make it quickly irrelevant by adopting the good bits. #gotocon

James Fuller (@xquery)

#gotocon DART is pretty cool at first glance … though revolution or evolution … need to dig deeper #dart

I think main premise behind #Dart will be based on its future performance … expect it to be very fast otherwise nice little lang #gotocon

Ola Bini (@olabini)

Wow. The #dart repository really contains the whole world and a bit more.

Compiling Hello world for #dart generates a half-meg JavaScript file. I think they talked about using tree-shaking at some point.

Headache. Think I’ll skip the conference party tonight.

Simon Brown (@simonbrown)

Maybe I’m old fashioned, but I still like inheritance :-) #gotocon

Dart announced

Monday, October 10th, 2011

This morning at the keynote, Lars Bak and Gilad Bracha announced Dart, a compiled language with optional static types, covariant generics and a concurrency model highly inspired by Erlang’s Actor Model.

Exciting times surely lie ahead.

Gilad Bracha Sarcasm

Monday, October 10th, 2011
One of the nice things about the Dart talk, besides that it seems to be a new fantastic technology, was the sarcastic remarks made by Gilad Bracha. Here is a short list of them some of these:
  • “Sun didn’t want to continue the Self project since it was so visionary” [Concerning the past of Lars Bak and Gilad Bracha]
  • “In the past, the type checker always won, it was like Roman Law: “Guilty until proven innocent”. With the Dart type-checker you are innocent until proven guilty” and “There this new magical type “Dynamic” which make the type checker shut up” [On Darts optional type system]
  • “I do do mistakes but obviously you won’t do anything stupid” [On doing mistakes when coding]
  • “Preserving order is important for your sanity” [On messages send to Isolate ports]

Analytics graph ruined by Dart announcement

Sunday, October 9th, 2011

The people over at http://gotocon.com/ like to keep an eye out for the Google Analytics graphs they’re harvesting when people visit the site.
However, on september 16th, when Helene logged into the dashboard, all meaningful information relating to all other dates than september 15th had been dwarfed by the surge in interest resulting from the announcement that on october 10th – that is tomorrow morning – the GOTO conference in Aarhus will host the announcement of the Dart programming language.

The lesson to take away from this: it seems the caches built into the system behind gotocon.com seems to work well enough to withstand a 10-fold increase in site traffic.

Voxpop: Tudor Girba

Sunday, October 9th, 2011

What’s your name?
Tudor Girba

Where are you from and what are you doing?
I’m originally from Rumania but now I live in Schwitzerland.

My bio is the following: I’m Tudor Gîrba (http://tudorgirba.com). I did my PhD in 2005 from the University of Berne, and now I work as Innovation Lead at CompuGroup Medical Schweiz, and as software assessment consultant through netstyle.ch.

What are you going to talk about and when?

Humane assessment with Moose. See humane-assessment.com for the method and moosetechnology.org for the opensource tool around it.

One of the large activities in a software project is developers reading code. The goal of the humane-assessment method is to increase the productictivity of this activity. Standard static analysis tools are too generic. Instead of ignoring 10K warnings from for instance PMD, developers should instead be able to build their own analysis tool and learn how to understand them. It should be as easy as writing a unit test for the entire analysis of a specific aspect.

You can go to humane-asssessment.com where there is a free minibook and courses available. There is no certification because I do believe that no two-days of anything can get you any certification of anything.

Why are you talking about this topic?
It is really important. Understanding code and the system is a large piece of software development. It happens in the closet – i.e. nobody knows how it should be done. It is also a large share of the cost and has significant impact of the decision making. Ensure emerging architecture, strategic decisions like how long time will it take to add this feature.

Humane assessment is not just technology. Software development is a lot about understanding. Let me give a parallel. Let us take unit testing. 10 years ago developers would answers no to the question: “Do you do any testing?”. Today almost everybody see the value of unit testing and TDD. A unit test is a tiny analysis tool but it only focuses on the functionality aspect. Developers should have the possibility to build small analysis tools for other aspects of software and get broader view including for instance deployment scripts.

There are three dimensions inthe humane assessment method:

A) Integrate it into software process.

B) Allocate ressources (org),

C) Have an infrastructure where tooling is cheap.

Preparations

Sunday, October 9th, 2011

The main GOTO Conference starts tomorrow.
But well over a 1000 lanyards with conference passes doesn’t magically assemble and sort themselves alphabetically to be ready for monday morning’s checkin frenzy. The stuff in the conference bags wasn’t there when the bags arrived in boxes with 100 bags each. When you arrive for the talks in Kammermusiksalen, be sure that days ago, there were no chairs lined up.

This is where the crew come into play. These hard working people have been here long before the fun part begins for the rest of us, working, sweating, perhaps even cursing a little bit. So when you pick up your conference bag, send a little nice thought towards the people in the “Crew” t-shirts.

GOTO Devil Interview

Saturday, October 8th, 2011

Luring in his sleep we woke up the GOTO devil for a brief interview.

What’s your name?
I’m the GOTO Devil, and have no real name. In a sense you could say that I’m the little devil in us all. Helping you GOTO Today people getting not just slightly offset.

Where are you from?
That is for me to know and you to find out. During the GOTO Conference I sleep in the Trifork Cellar room where they have installed me with a nice old Chesterfield chair, beer ad libitum, and a nice old play of darts against the only worthy opponent – myself.

After a pint or two I like to tweet my genialities. Follow @GOTODevil to see all my rants.

What are you going to talk about and when?
I’m not giving any presentations – although I would very much like to rant about our current state of affairs in the IT Business.

Why would you like that?
Because we are doing it all wrong. There is too much middleware. Too much about the new “big solving it all” programming languages. And all the agile process people think they can solve all the problems in the world by making everybody agile. In my humble… no, strike humble – In my opinion the only difference between agile processes and the good old V-model processes is that now I’m in a hurry all the time. During the V-model development days, there was only two or so months of deadline panic each year. Now there is deadline panic each friday before sprint end.

I miss the good old C days where all you needed to rule the world was a terminal window on a Unix terminal coding with vi.

What’s the coolest thing going on right now?
That the GOTO Speakers’ Dinner is held tuesday evening and I know how to get in like a ninja, eat like a bear, and get out again drunk without anybody noticing me that much.