There is a phrase I use all the time: “Search is one of the most misunderstood functionalities in IT”. And I think it is very accurate. The problem lies in two different aspects: Developers don’t know how to use search engines. And it is ok, search engines can be hard to tune appropriately and it is a specialised niche. In some cases, there are some search engines which are awfully expensive. Developers are lazy. Let me explain this one. Let’s say that I am setting up an application for selling cars. Potential customers always look for the same things, which are make, model, year, sort by price and so on and so forth. There is a set of meta data that is important and required to find what you are looking for. So what is the solution to this problem? Use a database where each field is stored in a separate column and look for the fields accordingly, just like in the following image. It is a mistake or at least a UX horror. I hate database driven search, but that is just my personal opinion. The correct wat of doing it is by providing a single search box. How? Like this: If […]
I have been a fan of Microsoft technologies all my life, probably because I’ve spent a lot of time working with .Net and related technologies. Eventually I became also an Apple fanboy as some people have called me. But something that I haven’t been called a fan of is Linux. Don’t get me wrong, I think Linux is extremely important, but in my case I have not worked with it as much as I think I should have. But now I am in a part of my life where I need to run Apache Solr in a production environment. What do I do? What comes naturally. In a nutshell I set up a Windows machine in Amazon AWS, install Java, download Solr, java -jar start.jar, modify solrconfig.xml, modify schema.xml, turn around a few more knobs and test. Once I am happy I install Tomcat and voila, I have a single node for production. It is a small application with very few documents and a reasonable traffic, so it is all good. And besides, it is amazing how much a Solr instance in AWS can handle. Anyway, my need keeps growing and I believe I need to set up a more […]
Being an entrepreneur is hard. I have several things at once (yes, mistake) but I am moving forward. One of the key areas where I put a good amount of effort is creating Pluralsight trainings. And one of my trainings, where I put in a huge amount of work is “Getting Started with Enterprise Search Using Apache Solr”, which takes a dev with 0 experience in Solr and a bit of .Net and in 3.4 hours teaches him or her how to build a working POC style project with Solr and a .NET MVC UI. You can watch the training here: pluralsight.com/training/courses/TableOfContents?courseName=enterprise-search-using-apache-solr Getting to the point, Pluralsight recently acquired CodeSchool and to celebrate they opened their library for 72 hours for free. So I announced in a couple of Linkedin groups that the course on Solr will be free for this time in case they want to take advantage of the offer. Huge surprise did I get when I see a newsletter from Solr-Start (www.solr-start.com) announcing this. It turns out that Alexandre Rafalovitch, a well known Solr popularizer and author saw my notice and blasted off an email to his crowd. It feels great when a good author shares your news over a newsletter! I wouldn’t even […]
So I needed to figure out which servers are connecting to which databases. That sounds like a complicated thing but it isn’t! Just run this query (and make sure you have appropriate permissions) SELECT loginame, hostname, program_name, DB_Name(dbid), last_batch FROM sys.sysprocesses where hostname <> ” order by last_batch desc
Collaboration is defined as “the action of working with someone to produce or create something.” Yet, many confuse communicating with collaborating. True collaboration gives you and your project an edge by aligning efforts towards a clear objective. I’ll show how teams can achieve true collaboration with JIRA Agile. And here is my presentation from the Atlassian Summit 2014 on this topic You can view in the Atlassian archives https://summit.atlassian.com/archives/2014/collaboration-teams/collaboration-is-more-than-communication-jira-agile Hope you enjoy!
This is just a quick tip and development best practice based on a few things I’ve found while fixing bugs in an application. It is not just a quick tip on how to get the extension of a file, but instead it is about not reinventing the wheel, thinking about all possibilities and outcomes when you are programming and in general doing things right. The idea is that whenever you have a problem to solve, for example get the extension for a given file you should find the appropriate framework function instead of trying to solve it on your own. Someone definitively already spent a lot of time creating a function that tests many potential scenarios. Here is what I found: What is the problem? That for any file that is included with multiple “.” Then as you can see the extension is extracted incorrectly. How should I handle this? Welll, if you are wondering “oh look for the first “.” but from right to left!” Hmmmm yes…maybe… but no sale. Instead you should use the appropriate framework libraries. Read this: http://msdn.microsoft.com/en-us/library/system.io.path.getextension(v=vs.110).aspx Path.GetExtension Method .NET Framework 4.5 7 out of 10 rated this helpful – Rate this topic Returns the extension of […]
It is so easy to be part of the 90% of Sturgeon’s law! How hard can it be to create something with bad usability? Apparently it is extremely easy. Take a quick look at this example I am within the corporate Sharepoint. I want to upload a document. So I click Add document. And now I get this popup. My question is how hard can it be for Microsoft to create #1 a decent upload control to select location #2 that has enough space so that I can actually read the current location #3 and I clicked Add document within a specific folder. I think the majority of times I would want to add the document where I clicked. How hard can all this be? Well, SharePoint is a great product but there are some areas for improvement and I would love if someone at the SharePoint team could take a stab at this. I heard something about good UX a bit a ago that makes perfect sense. A UI is like a joke, if you have to explain it then it is not that good!