Twitter github

Posts Tagged with “eclipse”

Want to be like Eclipse? Microsoft Does

I just finished reading this article while downing my morning coffee. Here are some interesting quotes:

Microsoft received plaudits and criticism for its openness efforts at the MIX08 event Thursday with a Microsoft official also citing an overture toward the Eclipse Foundation for open-source tooling.

Microsoft’s Sam Ramji, director of open source and Linux strategy, said after the session that in two weeks, Microsoft will reveal plans to collaborate with open-source Eclipse Foundation projects. Those details are to be aired at the EclipseCon conference in Santa Clara, Calif. on March 19. Microsoft has been one of the industry’s few holdouts from Eclipse participation… Microsoft also plans to work with the Apache Software Foundation.

It looks like this year’s EclipseCon is even more interesting… e4…. Microsoft…

e4 Thoughts

So the cat is out of the bag today, people are finally talking about an Eclipse 4.0 again. Some people are worried that Eclipse 4.0 won’t be as transparent or diverse as it needs to be, but I think that point is somewhat moot. In the end, people will either put up some commitment if they really care or shut-up. Let me rant a bit though.

For those who don’t know, a discussion actually happened last year at EclipseCon 2007 but didn’t really go anywhere… all I remember is Kevin McGuire talking about Mac OS UI and shiny objects. My personal feelings why things didn’t go anywhere was because there was no prototyped code kicking around… I mean… most of us are engineers… we like toying with code… we don’t like to talk about Mac OS UI and shiny objects (sorry Kevin!) most of the time. This time around, there’s some prototyped code kicking around. We can gather around the code and share our thoughts… it’s not like IBM and other participant’s of e4 are dumping code and saying this will be Eclipse 4.0… I simply view this more as an opportunity for people who are willing to step up and participate in the future of Eclipse.

Now that my rant is over with… what are one of my thoughts of what should be in an Eclipse 4.0? I’d give my first-born for something like a Firebug in Eclipse. If you ever worked with HTML, CSS or web development in general… Firebug makes this painful style of development a bit more enjoyable 🙂 I tried implementing part of my dream with Plug-in Spy in the 3.4 version of Eclipse, but that’s just a small piece of the puzzle. There are many limitations in the current platform that make it hard to introspect and edit things. So my contribution to the e4 enigma will be making sure that this style of introspection will be possible in the new platform. Hopefully I’ll become a committer. I’ll leave e4 tooling out of the discussion for now, but I plan to have an impact there too when the time comes.

So there you go. In the end, it will all be about teamwork and the willingness to work in an open-source environment:

So let’s start contributing once some code is available and newsgroups/mailing lists are established 🙂

OSGi (Equinox) and Strict Mode

Do you recall seeing all those access restriction warnings in your workspace because you’re using some internal API from another plug-in? Well, those can come back and bite you if your plug-in is running an in environment where osgi.resolverMode=strict is turned on. What is ‘strict mode’ mean in this context? It basically means that Equinox’s resolver will throw ClassNotFoundException’s when it comes across a class that is in a package marked internal.

There was an issue recently where the RCP stack had trouble running in strict mode. There were a few naughty RCP-related extensions that were referencing internal classes in other RCP plug-ins. These extensions are frustratingly hard to find if there’s no tooling. For example, when launching the RCP ‘Hello World’ example in strict mode, you come across this exception:

You think to your self, well pffft, I can fix that, I’ll just x-friend that package to my plug-in and be done with:

Then you go to launch the RCP ‘Hello World’ example and you get this frustrating exception again:

This is when the game of finding the offenders doesn’t become fun anymore. Actually, the feeling is very similar to when that stupid dog was laughing at you in Duck Hunt because you couldn’t shoot all the ducks:

However, never fear, PDE completed an enhancement that will make it easier for you to find these offenders:

The solution to this problem is to use x-friends or as a better best practice, don’t refer to internal classes outside your plug-in in your extensions as this is brittle.

Happy hunting.

Eclipse, IRC, Ajax and zx’s law

This is my semi-annual notice of considering IRC as an option to reach the Eclipse community and the adopters of your Eclipse projects.

There has been growth on IRC since last year… we have seen the number of people participating in #eclipse increase to about ~150 and about ~35 in #eclipse-dev (I’d say about ~30% growth). We have also seen popular Eclipse projects like Equinox (#equinox-dev) and Modeling (#eclipse-modeling) make their debut. I’d love to see other projects follow suite, like those CDT guys as there are frequent CDT questions in #eclipse

In the end, this is just another avenue to reach the users of your technology and help support them. It also tends to have a more personal feel than say newsgroups or mailing lists. IRC allows you to build a kind of camaraderie not found in other communication avenues. This is all part of something I jokingly call zx’s law. zx’s law states that the success of an open-source project is highly tied to the number of people that idle in its IRC channels. Just look at #ubuntu and its 1000+ users.

On a side note, someone crazy thought it would be funny to write an Ajax-based IRC client called Mibbit. For those behind crazy firewalls, Mibbit may be a good option as it provides a clean IRC user interface.

EclipseCon, eRCP and Sprint Titan

I like free things, especially when the things are electronic gadgets. I just heard that Sprint will be raffling away free Titan-enabled smart-phones for people who show an eRCP-based application that runs on Titan. To qualify for the drawing, I believe you have to show your application off:

  • Directly after the Titan long talk
  • During the IBM Developer Day reception
  • During the Titan poster session

If you have some spare time on your hands, you can craft an eRCP application pretty easily if you have any experience with RCP. Here are some resources to help get you started:

  • My eRCP article
  • Another eRCP article
  • eRCP Sudoku example in CVS (org.eclipse.ercp.sudoku*)
  • eRCP Helloworld in CVS

By the way, I’d look for an official press release soon for the details, but what’s wrong with getting started a bit early :)?

Eclipse BugDay Provisioned?

Just a reminder that the latest installment of Eclipse’s BugDay is this Friday.

I have some good news for people getting started as our kind friends at Innoopract have setup some easy profiles using their cool Yoxos On Demand Eclipse Distro service. They are *beta-testing* this type of functionality to see what type of reception it gets from the community. What do profiles mean in this case? Well, a profile will give you everything you need to get started like plugins, mylyn queries for the bugs and triage as well as a PSF.

I encourage other committers to get involved with bugday if they have the time. Just today I helped someone on IRC with a simple bug that never contributed anything to Eclipse. In this process he learned about working with Eclipse’s repository, the importance of self-hosting and how to use Mylyn. I know I could’ve just committed the simple fix myself, but taking someone through the process has value as it’s a good Eclipse community building exercise.

Take care!

Pushing Pixels and I-Build Goodies

There’s been a lot of hustle and bustle for the latest Eclipse I-build. The p2 guys are pushing hard to get things in and the API Tools camp is making their debut. From the PDE UI camp, I was on an icon conquest today with improving icons in the schema editor:

It’s funny that I agonize over things like icons when probably only a few people in the Eclipse community really care about pushing pixels. In the end, I lost my battle with overlays so another redesign of the schema editor icons will happen in the future to make them more overlay friendly:

I also had fun trying to come up with icons representing OSGi services but I’m going to save that rant for tomorrow.

Another item coming from PDE is a filterable launch configuration:

This is incredibly useful if you want to filter for a set of plug-ins and either enable or disable them. For example, say you wanted no org.apache* plug-ins in your launch config, simply filter for them and click ‘Deselect All’ (it’s filter-sensitive now). No more going through and checking things individually! Everyone can thank Ian Bull for his persistence in getting this enhancement in.

The other thing I’m looking forward to in the upcoming I-build is improved colored label support. Look for PDE to adopt this in things like the ‘Open Plug-in Artifact’ dialog and other places that make sense. If you’re interested in test driving this functionality, look for a class called StyledCellLabelProvider in the 3.4M6 release.

Oh, and JDT Core released some crazy changes to support external class folders. I plan on looking at this support in depth after my vacation to see if we can close an old outstanding issue in PDE.

That’s all that comes across my mind for now 🙂

The Polls are Open!

Well, it’s time today, the polls are open for the 2008 Eclipse Board Elections. I just wanted to say some things before I head out on vacation. There’s a lot of great people running this year, some new faces mixed in with the old. As a committer representative for last year, I’m proud what we managed to accomplish together in regards to things like the IP process. If you noticed, it’s a lot smoother to create CQs and work with them than it was in the past. There’s also been a big push to grant parallel IP for all projects, instead of just incubating one. Hopefully the fruits of our labor will result in parallel IP for everyone during the next term.

If I look back and figure out a couple things I accomplished that I’m proud of and could directly be attributed to me, this would be it:

  • Transparency
    • The first thing I did when elected to the board was setup a blog for the committer reps and wrote an entry on what happens in a typical Eclipse board meeting. With the help of Ed Merks, we also setup a newsgroup as a way for committers to get in touch with us. I also pushed other committer reps to blog when possible. In the end, my goal has always been to be transparent about our activities and keep an open communication channel. That’s something I will keep a focus on in the future.
  • Eclipse Curriculum and University Outreach
    • During one of our planning sessions on the board, I brought up the idea that Eclipse wasn’t getting enough traction within universities. As a result, there was funding put aside to develop an Eclipse curriculum to be used by universities. The curriculum is being worked on by a professor and should be available in the near future.

As for what I want accomplished in the future, the four main items would be:

  • Job Opportunities
    • Almost everyone I talk to is having difficulty finding Eclipse-related talent or finding an Eclipse-related job. This is something that needs to be addressed as it isn’t healthy for the Eclipse ecosystem to be in this position. Strategic conversations need to happen at the board level to see what we can do about this.
  • Funding
    • For those who don’t know, most of Eclipse’s funding comes from strategic members. Eclipse doesn’t have a lucky golden egg like Mozilla does when it comes to funding. It’s time to analyze other potential funding sources like certification or something else.
  • Verticals
    • Eclipse has done really well in the tools-space. If you look at the Eclipse membership, anyone who is building classy tools is a member. Recently, Eclipse has been growing in industry verticals like finance, health or embedded. I even managed to rope in a member (and awesome committer!) from the automative space. We need to push growth in these areas to further extend Eclipse’s reach as more than just a tools platform.
  • Foundation Staff
    • Eclipse has been adding members every year while the Foundation staff growth has been fairly stagnant over the years. The Foundation staff does an excellent job at pushing and growing Eclipse. If we desire to grow Eclipse faster, we should look at adding more members to the staff, especially from emerging areas like Asia or staff to focus on industry vertical membership.

It’s been an honor to represent the committers on the board last year. For those who know me, I always passionate about Eclipse and put it first. In the end, I’m the guy who adds your blog to PlanetEclipse, pushes to add flags to Eclipse Bugzilla and makes things like Eclipse BugDay happen. If you like that type of attitude, please consider voting for me 🙂

Sprint Titan and eRCP

Sprint has released its Titan platform to develop mobile applications on Sprint phones. What’s Titan in a nutshell, well lets look at this picture from the Titan overview slides:

What’s that we see in red? Oh my, it’s eRCP, what’s that doing there! People always called me crazy when I told them Eclipse would find its way into your cell phone or PDA, but look, another phone! In Sprint’s case, it looks like the ease of application development, shared services and the ability to do some cool remote management swayed the business case for including OSGi and eRCP within Sprint phones.

On a side note, this is what I have:

That’s an ‘Eclipse Installed’ sticker on my Blackberry. I tend to take the approach if I keep saying something, it will eventually just be true (I heard that works well in politics). Are you listening RIM? I know you’re a gold sponsor at EclipseCon, your tooling is built on Eclipse… the next logical step is Eclipse in your phone. I think you should hurry up because the rumor on the street is that Fake Steve Jobs will announce Eclipse on the iPhone at EclipseCon 🙂

Articles, Articles, Articles

During my last webinar on Plug-in Development 101, I received feedback from an attendee that they would like to see more basic articles about Eclipse out there. Since I do anything for Eclipse, of course I obliged and produced a Plug-in Development 101 article series over at developerWorks (part 2 is coming early next month).

While this article may not apply to most readers of my blog, it’s nice to have basic information out there to foster community growth. It would be great to see a CDT 101 or Higgins 101 out there for the masses. I’m always willing to help any Eclipse projects out there if they need some article help, feel free to contact me.

For the more advanced Eclipse developer out there, Ian Bull and I are working on a Zest article for next month. On a personal note, once Ian and I are done, I’ll be celebrating my 25th Eclipse-related published article! Drinks on me!

Thanks everyone for reading, if you have any article suggestions, feel free to drop me a note.