Friday, December 30, 2005

pizza, lego, weapons; or, the aftermath of xmas

that less-than-a-week between christmas and new years is usually pretty quiet. people often don't go into the office, shops are less busy, some people take the time to invest in recovery after christmas partying and eating.

the house here is semi-chaotic. pizza boxes (because i don't feel much like cooking right now), dishes that seem to pile up as quick as i clean them (as there are more people around the house than usual) ... but it's all good. it has led me back to wondering about the economics of pizza; the large is nearly 50% larger in surface area than the medium, but only costs $2 more? methinks the cost isn't in the product but the people and location.

i got t. a katana for christmas. i'm not sure if it's the wisest of things to purchase your significant other a weapon. you're kind of banking on them not going crazy in your general direction, but andy gave t. the thumbs up as "officially not insane" about a month ago so i'm feeling pretty confident with this decision. and the sword is freekin' sweet.

the p-man absolutely cleaned up on the lego front. he got about a dozen boxes of the stuff including an electric lego train from his grandma. aside from gradma's contribution of several boxes of lego ranging from large houses to people and people parts, both zack and t. got him lego too. p spent pretty much the whole day yesterday assembling various lego structures. we spent the last couple of hours before bed together assembling a fairly cool house with "brick tile" walkway, trees and a gabled roof. i love lego =)

plasma is coming along as well. i'm continuing to work on infrastructural bits today. should be moving on from applet management to the start of the theme system. zack has started on some visuals and matt broadstone is working on applet loading and javascript integration. these are the basic bits necessary to get some basic stuff limping along. then it's on to engines and getting the appletdisplay classes working. i really need to update the plasma roadmap on the website, but that can wait for the new year.

10 comments:

vladc6 said...

matt broadstone is working on applet loading and javascript integration

Are you sure you want to center Plasma around Javascript? Javascript is brittle, only marginally object-oriented, and has a ton of quirks, many of which are dependent on the interpreter. This makes Javascript apps highly unmaintainable.

Python, on the other hand, supports writing much larger programs and better code reuse through a true object-oriented programming style, where classes and inheritance play an important role.

Aaron Krill said...

I second the python thought. Especially since SK is already using Python, we should try and stick to a single language throughout. Make things easier. Plus, I hate JS. Py is my sweetypie? rofl.

Aaron J. Seigo said...

for all it's warts, javascript is lightweight, well integrated with KDE and known by a huge number of people. it was also selected to be the in-application scripting language of choice for kde4 at this year's akademy. both qt itself and kde provide ecmascript engines.

that said, python (and likely ruby and java) will also be supported in plasma. javascript is simply the first one we'll be doing. no point in doing 4 sets of bindings until you have the process perfected for one of them.

also remember that plasma widgets aren't complex beasts; they tend be fairly simple.

Ian Monroe said...

I always wanted the Lego train, but never got it. Peyton is a lucky guy. :P

JavaScript is a just an annoyingly stupid language. But internal scripting is what it was built for...

Jengu said...

Lua is just as built for in app scripting, is as lightweight as you can get, is written in 100% standards compliant C and compiles on just about everything.

http://www.lua.org

Aaron J. Seigo said...

unfortunately lua fails the most important metric for us here: the number of people who know it.

i was talking with alex gravely last month about language alternatives and he noted that his mono-based apps get virtually no patches but his c based ones get quite a few. this flew in the face of his expectations that an easier language would equate to more community involvement.

unfortunately, community involvement requires a community. and if the community around a language is small then you don't get involvement.

if you aren't interested in broad community involvement, or your target user base is familiar with that language (despite it's global popularity), then it doesn't matter.

but in the case of plasma, we are primarily concerned with making this something that gets a lot of community involvement writing widgets and engines.

Jengu said...

This is the second time I've made a post about an alternative language and you've made that point. Doh ;)

It is a legitimate concern: a language's installed base. I think that easier to learn languages can equate to great participation if one of three criteria are met:

1. The language is so much easier to learn that it thus acquires more developers, thus acquiring a larger installed base and making it moot.

2. The language is so easy to pick up that it's easy for an inexperienced programmer in the language to look at the code and make worthwhile changes.

3. The language either forces or makes it more likely that programmers code their projects such that becoming familiar with the code base isn't terribly difficult (i.e., any project not suffering from the C macro disease)

C# and Java only satisfy #3. And Paul Graham gives some very good reasons in his essay on language popularity about why Java (and thus it's near clone C#) aren't likely to gain lots of adoption from hacker types.

But I'm not sure that's actually relevant here. We're talking about applets that people are going to write no matter what because, hey, it's KDE. Nobody knew Lua, and now look here:

http://ui.worldofwar.net

That's from a gaming community, let alone a community that centers around programmers. There's literally upwards of 40 ui mods every week, all written in Lua. I think it's an especially good example because WoW UI mods have a lot of the same goals as plasma applets.

I can't find as good an endorsement for javascript, which simply has a history of putting annoying marquees in my message bar.

Aaron J. Seigo said...

> I think that easier to learn
> languages can equate to great
> participation if one of three
> criteria are met

yes, and that's one of the reasons javascript became popular. it's not hard to write small scripts in it.

> We're talking about applets that
> people are going to write no
> matter what because, hey, it's
> KDE.

i do wish this were the case. as alex gravely found out, this isn't something one can always count on. and the lower the barrier to entry, the more people will be available to make up that community.

> I can't find as good an
> endorsement for javascript

MacOS X dashboard widgets are the obvious example.

then one could look to the untold numbers of javascript apps on the net ranging from silly gimicks like mouse rollovers to sophisticated apps like gmail.

and remember that javascript is already very well supported in kde via kjs and kjsembed which provide both code and a community of developers today. i don't see anything similar for lua.

lua would have to have some very significant advantages to become a contender.

ok, that said, this about the default language. there would be absolutely nothing preventing you from creating a lua package for plasma so people could write applets in lua. if it were of good enough quality, i'd probably even include it in the plasma addons set by default as we plan on doing with python and ruby.

:: minahd :: said...

I'm excited about JS being there as an option for me because I don't know any of these other languages. I am rudimentarily ok with C++ and I can flub around if I have to with Javascript but I would be pretty bummed if the default language were something I'd have to learn before I could contribute my awesome and preternaturally mad skillz. :)

mahlah said...

actually. the electric train was from his mum :P

teehee. (details details)