Archive for the ‘Technology’ Category

Pretty tranquil weekend, if I may say so myself…

Sunday, February 7th, 2010

It’s quiet…maybe too quiet.

Have you not been getting any Bugzilla emails since the 5th? If yes, see bug 302020. Due to the irony of wanting to be updated of the bug’s status but not being able to be updated of the bug’s status (that is, I can’t be updated about the bug because I can’t receive email updates about the bug), I guess I’ll just have to resort to refreshing the bug manually between random intervals.

Handwritten comments now required when marking duplicate bugs…

Sunday, August 30th, 2009

If you’ve noticed that Bugzilla now asks you to put in a comment when you’re just marking a bug as a duplicate, you should go read up on bug 288058. Please don’t file new bugs or else the webmasters will have to mark it as a duplicate…and at the same time be forced to compose a pointless comment while marking it as such. ;)

Hello, “real world”…

Friday, July 24th, 2009

Just last month, I joined the ranks of Nick Boldt, Ian Bull, Veronika Irvine, Wassim Melhem, Eric Moffatt, Andrew Niefer, Paul Webster, and presumably many other Eclipse community members that I don’t know of, in receiving my diploma from the University of Waterloo. I officially stopped being a student and subsequently began referring to myself as being “unemployed” instead of being a “student”. While I like being unemployed, bills don’t pay themselves.

Next Monday, I will transition from the “unemployed” state to the “employed” state, entering a world that young and naive people like yours truly refer to as the “real world”. I’d be lying if I said I didn’t feel any pressure. For the past three or four years or so, I could do whatever I wanted and do it whenever I felt like. If I felt like playing some video games instead of hacking on code, well, I could do just that. Of course, now that somebody’s paying me for my time I don’t really have that luxury anymore. :P

This transition translates to a couple of things:

  1. participation in the newsgroup/forums, it’s kind of an on and off thing for me, I tend to only post when I’m working
  2. decreased activity on #eclipse, as many of you may know, supporting users in real-time requires a lot of mental physique, I may or may not continue hanging around, here’s to hoping that the channel can sustain itself though
  3. more blogging, at least that’s the plan
  4. naturally, the “employed” blogging corollary follows, with “the writings on this blog are my own and may not reflect my employer’s stance on the issue in question” notice

I suppose the million dollar question is who will I be working for? The answer to that question would be IBM. I don’t think this is too much of a surprise but I’ll let my readers decide in the comments. I’ve given Ian a bit of dirt in the past for the Foundation being too corporate-ish…I guess now it’s his turn to give me some. What goes around comes around, eh?

What will I be working on? I know I’ve told some people that I’ll be working on Platform/UI but it seems that fate has something I like to call the element of surprise as I was informed about a month ago that I’d be sent to the Jazz team instead (okay, you got me Wassim). Of course, I’ll still have my commit rights but my activity on Bugzilla and CVS will be taking a hit.

Thanks goes out to everyone that has helped me along the way these past few years, you all know who you are. I would however like to single out Paul for all his help on IRC, both for splitting up the user support work and for my own Eclipse-related problems, and Chris for providing me with the user-to-contributor bridge when he mentored me back in 2006 for the Google Summer of Code program. Kudos also goes to everyone on IRC. I’ve had a lot of laughs and learned a lot from all of you both with Eclipse-related material and the many other random things we felt like talking about during any given day. ;)

Before I go, I would like to express my apologies to the Eclipse community at large for making the Platform team less diverse than it used to be as an “Individual” committer has now been replaced with an “IBM” one. :O

Native widgets? Check. Native icons? Maybe not…

Thursday, June 25th, 2009

Eclipse-based applications looks and feels native thanks to SWT but once you start gandering at them icons, it just doesn’t quite hit the mark. For the readers out there that are familiar with the Tango Desktop Project, the window below doesn’t look out of place at all, right?

In the Eclipse world, the icons don’t really bother us at all since we’ve been looking at them for so many years. Unsurprisingly, for some clients and users, this doesn’t quite cut it and they want to customize them a little or they want the icons to match their own desktop’s. What if you could appease these people by adding a little ‘Theme’ menu at the top to flip around some options? Or what if the user could just define their own icon preferences…?

If you’ve ever been troubled by icons like the two bug reporters above, e4 CSS support could be the solution to your problems. Feel free to comment on bug 281593 if this piques your interest. You can help shape e4 into the next generation platform that you and your clients need! Join the e4 team, today! :)

Note: I realize that in the Eclipse world we have very specific user interface and icon design guidelines so this may not be everybody’s cup of tea. But hey, if you’re not interested in this, feel free to work on something else! Let me tell you, there’s no shortage of work in the e4 project. ;)

CSS, Cascading Styled Sudoku…

Monday, June 1st, 2009

I have a (bad) reputation of overscoping…


The above is what one of my supervisors have commented about me during an internship for an unnamed employer.

So what have I been doing now? The latest thing I’ve been dabbling my fingers in is the CSS styling support that’s part of e4. I wanted to see what state the CSS engine’s API was in so I decided to try and extend it to style something beyond simple SWT widgets. I mean, really, just how hard could it be to style some SWT GC code? Behold what a little bit of work can get you…


Please note that some colours are not “perfect” because alpha values are set on the GC.

As you can see, just because the CSS code is in the e4 repository doesn’t necessarily mean it’s just half-baked. Please give the code a spin and try to style your current 3.x code! :) Make a difference by contributing your feedback to help the e4 team evolve this API. And of course, if you’re feeling a little adventurous, feel free to join the e4 team. ;)

Extending real-time shared editing to projects…

Sunday, May 10th, 2009

Now that finals are over, I’ve been able to spend more time hacking on Eclipse. One of the things I’ve been working on recently is extending the shared editing work that Mustafa showed in his screencast about a year ago to encompass an entire project. Two of the most common issues that users have with the current functionality is its inability to share multiple documents and that it is not “workspace aware” on the receiver’s end. I collected both of these concerns along with the request to distribute resource changes and proceeded to try to hack something out.

My screencast should hopefully demonstrate what I’ve managed thus far. It’s about seven megabytes so it might take a while to load. There’s no audio but I think that the text narration on the screen should be sufficient.

I’m not sure what the next step is (well, beyond what I’ve outlined here), so if you have any suggestions, feel free to comment on the bug. Without a doubt, the concept of distributing resource changes is intrusive and controversial so I’m probably going to have to do more investeigating as to how turning that off will interfere with the shared editor. In any case, I hope that this will be useful to others in the future, particularly those that are interested in trying out pair programming. I’ve only pair programmed a few times (during some late evenings with Igor to meet deadlines :)) but I found it really, really helpful.

Please note that this will not make Galileo.

Eclipse and installers…

Friday, March 20th, 2009

Is it time to change our releng game plan and/or how the downloads page is setup to provide more visibility for the p2 installer?

* energetic (n=opera@ip82-139-119-221.lijbrandt.net) has joined #eclipse
energetic: Hi all
energetic: Am I with stupid or does eclipse does not have an installer?
rcjsuen: energetic: The builds from eclipse.org don’t, no.
energetic: I would expect any decent program created has an installer
energetic: now i am 1. really wondering why eclipse oesnt have an…. installer…. and 2. wondering why I am discussing this
rcjsuen: energetic: Well, not Eclipse anyway. If that bothers you, then feel free to not use Eclipse.
energetic: but for #$%^&* sake! why!
nitind: You don’t need an installer.
Orangebat: energetic: m’eh, it’s one directory, put it in program files, it’s installed
energetic: an installer! something we have solved for years!
rcjsuen: energetic: unzip and go, pretty straightforward to me
rcjsuen: I don’t even next to click ‘Next’ or ‘Finish’.
energetic: so an batch scripts to xcopy files was too hard
rcjsuen: Just double-click my eclipse.exe and I’m good to go.
* energetic removes eclipse. Devvers coding an IDE without an installer, have high chances of being unable to code a decent IDE
nitind: energetic: Or, see http://wiki.eclipse.org/Equinox_p2_Installer
nitind: energetic: And you are making a LOT of invalid assumptions and conclusions.
rcjsuen: energetic: Good luck on your project using another IDE then.
rcjsuen: Perhaps we will see you around again someday.
energetic: cya guys in 2-3 years
* energetic (n=opera@ip82-139-119-221.lijbrandt.net) has left #eclipse

New additions for the ‘Infobox’ template…

Sunday, December 14th, 2008

I’d imagine that some of you Eclipsepedia users out there may be familiar with the ‘Infobox‘ template. It’s featured prominently on a couple of project wiki pages like PDE, Equinox, and ECF. I’ve recently added a new ‘Contribute’ section for people to add a link to their repository on ViewVC and to their project’s PSF. The usage of the new ‘viewvc’ and ‘psf’ attributes are described on the template’s page so I’m not going to reiterate it here.

The primary driver behind this new addition was that Rob was having problems locating the source code to PDE. From what I understand, PDE recently moved its assets over to a new pde/ folder under /cvsroot/eclipse and was apparently causing grief for people that were unaware of the move (as they were now seeing duplicate projects in CVS). I offered to help Rob by locating a PSF for PDE for him.

Much to my surprise, I didn’t get anywhere after snooping around the wiki and at www.eclipse.org/pde. This sounded like a good excuse to make Chris’s inbox even bigger than it already is as payback for the abuse I was dealt during GSOC 2006 so I quickly shot him an email inquiring about the whereabouts of PDE’s elusive PSF. Chris replied and I systematically forwarded the information over to Rob. Based on Rob’s “Hey, thanks. You learn something every day.” and “Wow, that’s excellent.”, I think we just might have a PDE contributor in the making here. :)

So, what better way is there to encourage contributions from the community than to give them a one-stop (and *cough* consistent *cough*) location for checking out an Eclipse project’s source code? Update your wiki pages today and use the template to help promote and attract contributions from the community!

Synchronizing workspace resources with remote peers using ECF…

Monday, December 1st, 2008

I’ve been hacking on an implementation of Platform/Team’s synchronization API for the past couple of days using ECF’s datashare API as the transport and I have to say that I think I’ve made some great progress so far. I’m really quite surprised by how little work was required on my part to get everything working. Like most other Eclipse extension points, it was really just a matter of implementing a couple of interfaces and doing a bit of subclassing here and there. The rest just kind of fell into place as they say. I really am quite pleased. So, thanks for the great work and great design, Workspace team (both former and current members)! :)

Anyway, back to what I was talking about, the idea is that this plug-in is going to let you synchronize arbitrary resources in you workspace against the same copy on your friend’s workspace. If you’re having problems visualizing what I’m talking about here, you should check out the screencast and see it in action for yourself. Please note that the file is around 14 megabytes so it may take a while for it to finish loading. Don’t click the stop button before it’s done as it appears to stop the rendering also. And oh, there is audio commentary with this video but I think it might be a little low so you may have to amp up your volume settings.

If you have any comments, use cases, or whatever, please make them known by commenting on bug 257017. Thanks!

Binding editors to perspectives…

Sunday, November 16th, 2008

In 3.5M3, we introduced two new API methods, showEditor(IEditorReference) and hideEditor(IEditorReference), in IWorkbenchPage. This is an interim solution that was proposed as an attempt to resolve bug 11001. Paul has provided a great description about what those two methods do and what we’re trying to achieve here in his comment so I suggest you read that and familiarize yourself with the details.

Essentially, these two methods provide plug-in developers with the ability to (unsurprisingly) show and hide editors at will. This seems to be a somewhat common use case in the RCP world as there appears to be a tendency to define rigid perspectives that are only intended to perform certain actions and those actions alone. Clicking something brings an editor up but when they switch to another perspective this “irrelevant” editor is still there and people get upset and so on and so forth.

The notion of restricting editors to a perspective is not unheard of in the IDE space either as I hear people ask for this feature every once in a while on IRC. These users don’t seem to like having their Java editors show up in the ‘C/C++’ perspective. This sounds like a fair requirement I suppose (I wouldn’t know since I only do Java development). Some users also want this filtering functionality extended onto views by filtering out projects based on current perspective. Now this all sounds like something Mylyn (and/or Tasktop?) can help the user with although I’m not positive as to whether Mylyn can be made perspective-aware or not in this regard…but what do I know, I don’t even use Mylyn.

In any case, even if a plug-in was perspective-aware and was achieving the functionality offered by these two methods, I’d imagine that the developers are probably using internal classes and methods and/or are having a tough time getting the behaviour to work right. If you haven’t been having any problems, we would love to know how and you can let us know how by leaving a comment on the bug. For the rest of you, if the idea of showing and hiding editors, perspective-related or otherwise, are relevant to your project or plug-in, please, download 3.5M3, give the API a spin and try integrating it into your code and let us know how it’s working out for you. The response we have had thus far since Paul committed the code has been underwhelming to say the least and I am shocked to say that this request actually has 18 votes! Of course, that number was only applicable at the time of this posting because this post may or may not cause that number to fluctuate. ;)