What Mohamed, Sarah, May, Moataz, Ismail and Ahmed are currently specifically interested in is module development. For their end-of-degree thesis, they want to develop a plugin for NetBeans (they haven't made a final decision yet on what kind of plugin, but they're seriously considering a Java 3D Image Editor -- so, if there's anyone out there reading this who wants to give them advice or suggestions, or if there are people out there with experience in this field, please let me know or leave a comment at the end of this blog). So, somehow Mohamed had got in touch with Gregg (about something unrelated) and then Gregg, because he knew I was hanging out in Egypt, put me in touch with Mohamed. After exchanging a few e-mails it seemed like a good idea to do a short presentation on module (i.e., plugin) development in NetBeans IDE 5.0, followed by a brief overview of other 5.0 features. I got Brian to send me his slides -- and then arranged to meet Mohamed outside the Egyptian Museum in Cairo. (The train for Cairo left at 6.11 in the morning, so I didn't get much sleep. I was also worried that maybe I'd somehow miss Mohamed at the museum or that there'd been some miscommunication about something.)
But everything went perfect! I met Mohamed at the museum, walked back with him to the AUC, then met with the others, and walked through Brian's slides -- all of us were crowded round Mohamed's (great, and very very clean) laptop (except for Ahmed who joined us later). After going through the slides (which give a very basic but thorough overview of the whole module development process), I did a quick demo which added a menu item and toolbar button to the development IDE. The speed with which everything happened really worked in that they clearly felt excited about how quick and fast it all was. (One thing I stressed, which didn't come through so clearly in Brian's slides, is the connection between the NetBeans APIs and the module file wizards -- i.e., using the Actions API is kickstarted through using the New Action wizard, using the Loaders API is kickstarted through using the New File Type wizard, etc.) Also, what really works very well in demonstrations (because both these features are just so cool) is to show the layer.xml browser in the Projects window as well as the API filter in the Project Properties dialog box.
I also did a quick demo of various other 5.0 features -- obviously, I included Matisse, the many new refactorings, and web service support (that really blew them away -- so much code is generated for you in the web service area, when you see it happening before your eyes for the very first time, it's an awesome experience).
Then they asked a lot of interesting questions, some of which I couldn't answer. Here they are (these are the ones I couldn't answer or which I consider to be issues that I'll add to Issuezilla soon):
After the slides, the demos (a new menu item, toolbar button, loader, and web service, all within 5 minutes), and the questions, we went to a local hangout place, with coffee and so on (reminded me a bit of Starbucks). There we took several pictures (once I get them from Mohamed, I'll publish them here so that you can see what they look like). I had a really good time with them, they took me to central Cairo, where we hung out, had a really great meal (fantastic Egyptian kofta), and then they even drove me all the way to the airport. (And they didn't laugh at my pathetic Arabic, not even once!)
One very interesting point I picked up from them was when they asked me: "What perception do you -- and other people -- have of programmers in Egypt?" (They asked me this because in my e-mails I had expressed a lot of surprise at having discovered that they had even heard of NetBeans. After all, has anyone come across Egyptian programmes on nbusers? Or anywhere else? I know I haven't.) I told them what I think is not just true for me, but also true for a lot of other people, specifically in NetBeans -- who even knew that hundreds of students in Egypt are all using NetBeans? That really blew me away. Then one of them said something that explained a lot to me -- he said that they have "a suspicion of collaboration". In other words, they want to solve things themselves, only as a very very last resort would they consult a mailing list such as nbusers. In general, any problem they encounter, they solve amongst themselves. In this way, they stay below the radar, and NetBeans folks never know that they even exist...
They'd definitely be interested in hosting something like a NetBeans Day (they say that they should be able to attract at least a few hundred people, students from a variety of universities, especially if the productivity of NetBeans is emphasized and the connection between productivity, skill enhancement and the increased likelihood of getting a job as a programmer). The NetBeans Day would, in their opinion, if it were well-marketed, be able to attract developers from surrounding countries too, such as Kuwait and Jordan.
Finally, as pointed out above, Mohamed, Sarah, May, Moataz, Ismail and Ahmed would really appreciate your input! Here are some very specific things that they'd like input on:
So, basically, if you're out there reading this, and willing to chip in your advice or suggestions -- please feel more than free to do so. You can also just contact Mohamed directly, if you prefer. Here's his e-mail address: email@example.com.
And... watch this spot if you want to see pictures of us hanging out together in Cairo!