Solr synonym file for different segments and industries

I have gotten asked in previous conversations if there are standard synonym files for different product sets and industries for the Solr search engine. Interestingly enough I could not find anything out there so I decided to create an online repository on GitHub for such files. I envision files for all kinds of industries and product sets. I put some ideas out there and if anyone else has more please share with the community.  If you happen to have a large set of synonyms today also share those!

You can check out the repository here.

SugarCRM buys Lotus Notes tools, cozies up to IBM – Computerworld

Very interesting…

SugarCRM has acquired iExtensions, which makes customer relationship management (CRM) software for IBM Lotus Notes users, in a bid to attract more enterprise customers and compete better against bigger rivals like Salesforce.com and Microsoft.

..

Notes users will be able to synchronize their contacts and calendar entries between SugarCRM and Notes, for example, and link emails and calendar entries in Notes to particular customer records in SugarCRM, he said. The company had already built some integration with LotusLive, and the acquisition will accelerate its Lotus integration plans by about a year, officials said. The terms of the deal weren’t disclosed.

via SugarCRM buys Lotus Notes tools, cozies up to IBM – Computerworld.

Lotus bubble – Make Dojo better…get involved!

As a community, the Lotus community is very strong. We all get involved with things like OpenNTF, blogs, tweets, etc. One place I see Lotus fall short is getting involved with the many technologies our core Lotus products use – like OSGI, Eclipse, CKEditor, and Dojo.

Dojo is no exception! We, as a community, need to make this the best JavaScript library out there. So I urge everyone to start learning it, fixing it, documenting it, and promoting it. If you see a problem with an API or the documentation then fix it! It’s open source!

Is open source sustainable?

There is an interesting post over on Alex Kings site – he is a plugin developer for WordPress.  The conversation makes me wonder about other open source initiatives like OpenNTF.  I know many people across the community contribute amazing material to OpenNTF and I have often wondered if it was maintainable.  I know that every thing I contribute either in an article, blog post, or on OpenNTF will have some level of “support” in the future.  It may be days, weeks, months or even years but an email, a question, or a enhancement is inevitable.   I would have to say if you are not an open source enthusiast and simply do it because you love it or you in fact do “get paid” enough through donations then your interest over time supporting free enhancements and upgrades will diminish.  I do think many people, especially in the Eclipse and Lotus communities contribute to open source for many other reasons – building a community, promoting a technology, or just polishing skill sets.  Many, like myself, have a vested interest in seeing the community or technology grow so it creates more opportunities in the future – that to me is the essence of open source.

The Open Source IT architect

The open source community is surely a force in today’s world.  I started thinking about the “off shoring” comments made on a few blogs that I follow on planet lotus and I decided to think about what I would do from a business perspective if I was in the position of looking for a new job, new business opportunities, or a way to use my software engineering skills going forward.  One of the things our industry has that many other industries do not have is this thing called “open source”.  This is a huge opportunity for software engineers and developers.  From contributing to the projects, using the projects in your company or supporting/extending them for other companies – many options are possible.  This could easily save your company thousands or millions of dollars in software fees.  Not only can you save money with your own company but you could become a consultant or support specialist for the many open source products out there, or build new solutions based on an open source package.  Just look at how Damian started CouchIO, a company who creates solutions based on CouchDB.  Taking your skills to new areas is really what it’s all about.  Blogging, networking, authoring, and “getting yourself out there” are all critical aspects of making it in a global field.  Specializing in one or more of these open source technologies can reap great rewards in the end.

The communities around open source vary with regards to quality and actual usefulness.    You can see my personal list of tools I use at home in a previous blog post.  There is also a great list over on lifehacker if you want a comprehensive list of available tools for a given category.  Apache is the place to start for back-end business software – everything from J2EE web servers to authentication protocols.

I think this could warrant some attention.  Knowing all of the areas where open source touch and being able to piece together solutions using free/open source software would be an interesting skill to have.

As with many, my biggest problem would be engaging in new areas that I am not intimately familiar with as most of my career has been focused on Notes and Domino technologies.  So if your area does not support the Notes market place then you may want to consider relocating or learning some open source areas and applying the cool things you have learned working with Notes in some new space.

I would be interested to hear others opinions on this touchy subject.  This of course is just an idea and an actual business model that brings in money has not really been brought out yet.

JDojo is not GWT!

After my two previous posts I have received a lot of questions and interest in JDojo so I figure I would pass on a section of the Jazz site that explains what JDojo is compared to GWT.

GWT is a cross-compiler, web runtime and window toolkit.

However, Jazz ships Dojo as a web runtime and window toolkit, greatly enhanced by home-brew server side logic to support OSGi web bundles, dynamic merging and shrinking of JavaScript code etc. While it would certainly be possible to integrate GWT in the Jazz architecture, it would not be a perfect fit. Additionally, it is hard to provide a “growth path” to migrate from the current Web UI story to GWT, it is an all or nothing approach.

Additionally, the code generated by GWT is object-oriented bytecode – it is not meant to be read by humans nor does it provide a growth path for gradually migrating an existing JavaScript web application into a GWT applications. Last but not least, integrating the generated code into an Eclipse environment would be much harder.

That page also explains that JDojo is a work in progress as is the ScriptEngine.  For JDojo to be successful it definitely needs more resources and open its doors to the open source community.  I think this is an excellent concept and being a Java developer the only thing I need to do is really learn the Dojo framework.

Kids writing games with XNA

Bradley Jones has two great articles for programming XNA (XBox games).  I really like XNA and played with it for quite a while.  I think it is the perfect tool set and framework to get into game programming.  The framework hides a lot of the dirty details with video, sound, and synchronization but also allows you to really dig into the concepts at a fairly low level.  Check out these two articles and when you mix the tooling with other freely available tools like GIMP, Blender, Audacity, and ImageMagick.

Development with Microsoft Visual Studio 2008 and XNA Game Studio

Moving Items with Microsoft Visual Studio, XNA Game Studio and A GamePad

My favorite open source and free tools for software development

It seems this list gets more interesting each year and this year I made a pretty big change in my “favorites”.  The reason I love this list is because anyone, even kids, can start to learn programming or software for free.  This includes business programming, graphics, office automation, game programming, web development, etc.  I wish I had these kinds of tools 20 years ago.

Eclipse and Java

At the top of the list has to be Eclipse, I solely use it for 99% of my development – even looking at and editing native code for Notes and Domino.  It is by far my most useful tool for all kinds of software editing.  Granted I use it mostly for Java development but with the many projects you can install into it you can pretty much do any kind of development.  Eclipse is also the base platform under many commercial products like Lotus Notes, Lotus Expdeditor, Lotus Symphony, and Lotus Sametime.

Firefox

This web browser should arguably be at the top of the list.  I use it every single day on all of my computers.  I think its the best browser out there and of course it is free!  It has a ton of plugin support and is a very fast and reliable web browser.  I could probably write an post about my favorite plugins just for this great piece of software.

Lotus Symphony and Open Office

At the start of 2009 I started using Lotus Symphony solely for all of my work at IBM instead of Microsoft Office.  I still use Open Office at home on my machine and for my kids.  They use it for all homework and other little projects.  In short, both of these are great tools and in my mind a must have for all people and businesses.  They can do more than the 80% of what most people need in an office suite, I would say it is well above 90% at this point.  So if you are paying for an office suite like Microsoft Office then you are most likely wasting your money.

Graphics editing – GIMP

By far the most popular graphics editing tool on the open market is GIMP.  It is arguably “better” than PhotoShop and for the price it is unparalleled.  I use to use Paint Shop Pro and Microsofts Image Composer for the longest time but some time last year I started using GIMP exclusively for graphics and screen mockups.  I still have Image Composer installed and have used it a few times but I think I will be uninstalling it shortly.

Remote Desktop – TightVNC

I do use the built in Microsoft Remote Desktop software a lot but many times I use TightVNC to share between developers or take control of a customers machine.  This is by far the best open source remote desktop software.

The play list:

Other tools on my list but I don’t necessarily use daily.  I play around a lot and learn from many of these.  Either way, these are great things to share and pass on to people who have interest in software development.

MySQL - 100% free and open source database.  I actually use this on balfes.net for a few things but that is about it.  You can obviously use it for any relational task.

ImageMagick - great tool where you can convert images between formats using scripts or your language of choice.  If you want to write graphics applications this library will be key for you.

Audacity - this is an awesome tool for editing audio files.  I actually used this to create ring tones for my old windows mobile phone.  This application also has a lot of plugins available to extend its capabilities.

Blender - want to write computer games or become a graphics artist for games and movies?  Start with Blender, its an awesome application that will teach you all of the basics.

Unreal Development Kit – I just started playing with this again this past year.  This is arguably one of the best game engines on the market.  Many 3D based games use this engine.  It comes with a world editor, a script language, and libraries to bind with.  You can pretty much create amazing games and animations with this free kit.

If you are really interested in free software you can check out “Best Open Source Software” page, it has a lot of software categorized for easy browsing.