Graph Databases – Not just for facebook

Graph Databases – Not just for facebook Graph databases are a powerful type of database that is most notably being used in social search such as facebook’s graph search and recommendation engines such as Netflix’s recommendations. Graph databases allow me to search facebook for “My friends who like snowboarding and live near Reno, NV” and get a response fairly quickly (especially considering that facebook has 1.06 billion users!). Graph databases are very powerful and should not be written off as only useful in social network scenarios. In this post I will briefly cover how graph databases work and give some examples of where they can be used. Some graph databases that are available is the open source Neo4j and SAP’s HANA database. If you are not familiar with graph databases, you are probably familiar with tables in a relational database (or excel), like the one pictured below. The employee table below lists employees and relates them to their manager using a column titled “Reports To”. The “Reports To” is a foreign key, meaning that we can use the value in the “Reports To” column to find the employee ID of that persons manager. Employee Number First Name Last Name Job Title Reports To 1 Brian O’Neill CEO 2 Jon Dunphy VP 1 3 Andrew Garcia Engineer 2 4 Pooya Moridi Engineer 2 5 Nikki Usugi Engineer 2 This model works pretty well, until we decide to have give all employees two managers to ensure that TPS reports are completed correctly and turned in on time. To stay with the model we have, we would need to create a second column called “Also Reports To” or store the relationships in a second table. As we hire more people and the table gets more complex, it starts to take longer to find things like everyone who reports to someone’s manager’s manager. A graph database is made up of a collection of nodes and their relationships. This allows graph databases to treat relationships with the same level of importance of records, meaning that traversing relationships are faster than in traditional searches when we had to join tables or search through keys. The table from before is pictured below as a graph database. Now if we want to add additional types of relationships, it only involves creating a new node with the new relationship. In the below example, I added a “On Project” relationship to a node for that project and added all of the engineers to that project. So, how can we take...

My First Impressions of the New SCN Gamification

My First Impressions of the New SCN Gamification Starting today, SCN has been loaded with some new gamification features. If this is the first time you have heard about the changes, I recommend looking atChip Rodgers’ blog Game On!  #Gamification Coming to #SCN (SAP Community Network) which covers all of the new gamified features that have been included. You can learn more about the team that worked hard to get these new features implemented at http://youtu.be/_9dumwW7XRo. The gamification is enabled using bunchball’s nitro platform. If this whole gamification thing is new to you and you missed the 2011 SAP techEd keynote with Jane McGonigal, I recommend you check out Jane’s TED talk about how Gaming can make a better world. I also recommend reading How Gamification of the Enterprise can kill the Dilbert-Comics, which focuses on how gamification can make changes in the enterprise application space. Though gamification may not be widely used in enterprise apps just yet, they have been around in the online collaboration space as long as I can remember. I do not think I have ever seen a forum that did not at least give points and rankings for the number of posts people have. If you are still not sold on the whole gamification thing, you can always ignore it! Just as points have been on forums for many years, a point system has also existed on SCN, it is just having some changes now. The first change that I noticed and really like is that your points will no longer expire after 12 months. I think this is great! Partly because I had some points that expired and adding that in brought me up to a silver from a bronze. Woo-hoo! Of course the benefit of having points expire is that it encourages members to keep contributing in order to keep their status. I think not expiring is good because people shouldn’t be punished because they are not active for a while, which could be a result of working on a very time consuming project. There are also some improvements to the waypoints are assigned in the wikis explained in SCN Wiki points allocation changes . Missions are a new feature that allow you to earn points and badges for completing a task. All of the missions that involving adding content require you to read the SAP Community Network Rules of Engagement as the first step to adding content. Much like the itunes agreement, I’m sure many people have never read this before and I would bet the mission requirement will help with that. Unlike the itunes...

How Blogging is like Stand-Up Comedy

How Blogging is like Stand-Up Comedy People blog or do stand up comedy for many reasons. Some people want to become famous, some want to express themselves and some just share information in a different way. In stand-up comedy, you know if your joke went well if the crowd laughs and in blogging you know if your post went well if it was shared, tweeted, commented and facebook liked. Both comedy and blogging can be done by anyone, but it takes a lot of work to get a following. I did stand-up comedy for a while at local bars or comedy clubs that had an open mic night. No really, I was even featured in the local Reno News and Review. My style of humor was to make fun of myself and things that bothered me. This allowed me to laugh about my own shortfalls or experiences that are funny now, but were terrible when they happened. I have had similar experiences with blogging as well. I wrote my first blog post last May about modernizing ABAP development  on the SAP community network. It actually took a long time for me to actually write the post, but it felt great once I got it done. I was feeling frustrated about the fact that we do not take advantage of modern ABAP and what I got back in the comments was that I was not the only one who feels that way and the discussion brought about many ideas and solutions to this problem. Since then, I have used blogging to both share things I have learned as well as vent about situations that I experienced. This has helped me to learn and laugh about my own experiences that may frustrate me. Connecting with other people through blogs also allows me to access a bigger network to collaborate on solutions to problems that are frustrating me. What I think may fix an issue at my place of work, may have already been tried somewhere else with or without success. Just like with stand-up comedy, it is sometimes hard to find things to write about! Comedians typically carry a notebook with them at all times to write down any observations or thoughts that they have throughout the day and starting tomorrow I will start using a blogging notebook. In comedy, 90% or more of the things you write down are not funny. Luckily, with blogging you dont need to be funny so you can still use the un-funny material!...

Should we hire user experience experts?

Should we hire user experience experts? The benefits of a great user experience makes sense. An easier to understand interface can lead to lower training costs, improved productivity and higher morale. A good user experience can lead positively affect the way employees and customers view the company brand as well. So, what does it require to provide a great user experience? Do we need to hire a interface designer or an artist to allow us to come up with a spectacular design that even Steve Jobs would approve of? A friend of mine recently worked as a developer on a project where an artist was hired for a large sum of money to design a new intranet site. The artist met with a few executives who told him everything they were looking for in the new intranet. The final design was given to the developer who was told to create a new site that followed this new design created by a user experience expert. The project eventually failed. While the solution looked nice, it did not cover everything that everyday users needed. In this example, user experience was added, while functionality was sacrificed. In my opinion, instead of hiring a user experience expert, we should be examining how we run our IT projects and which will tell us what we really value. If user experience is a concern, the first group of people I would talk to is the project managers. Who designs the user interfaces today and how much time is typically allocated during the project to focus on user experience? Is user interface design the first thing to get cut when a project is running late? why? User interface design should be an iterative task. Something that continuously improves as changes occur to the underlying application. As a result, the waterfall methodology does not encourage a good user interface. Instead, an agile methodology with an emphasis on user focused interface design can encourage  a better user experience. That is as long as we add one more thing, training. Developers may need training to encourage better user interface design. Especially if they have been already trained to ignore the user interface. For companies with SAP ERP systems, it is not uncommon to hear bad things about the existing user interface. However, there are many things that you can do to improve the user interface, such as implementing netweaver business client (NWBC), personas and training developers to use ABAP web dynpro for all of their applications....

How Social Enterprise Can Empower IT

How Social Enterprise Can Empower IT Social media is dramatically changing the ways companies work with their customers. Don’t believe me? Go on twitter on tweet about a your customer experience with AT&T , Charter Media, Comcast or starbucks. There are people behind these twitter accounts that will reach out to you to correct a wrong. Companies are utilizing social media to listen and respond to customers like never before. This is not only B2C companies, but also B2B customers such as SAP, Avaya or Neenah Paper. Just as social media has been utilized as a powerful tool for the marketing and customer service departments, it can also be powerful when turned inside for the B2E (business to employee) or even B2IT (business to IT) experiences. I recently heard that there were some complaints about the UI of an Adobe Flex application that I support. The director was asking if a new tool could replace it, which was a shock to me because this is an application that we hired a consultant to custom develop. Being a custom developed app we have the source code and thus can make the UI work however we want. The problem was that the concerns of the users never made it to the developer (me) who could do something about it. Things like adding a “select all” button and other minor UI changes can take seconds to complete, but can have a huge impact to someone’s user experience. There is a lot out there already on the benefits of these tools, but I want to focus on how these internal social media tools can empower IT and prevent us from frustrating business users with the telephone game. Enterprise social tools such as Jive, Microsoft SharePoint, SAP Jam, or Yammer to name a few can be utilized to break down silos and help bring the enterprise closer together. IT departments may even own the implementation of these applications and should be finding ways to take advantage of them to help bring employee issues to the right person so that our IT solutions can be improved. We should be monitoring these collaboration sites for people complaining about our IT solutions just like other companies monitor twitter to find people talking about the solutions that they provide. Proactively working with business users and having a clear and transparant way to turn frustration into projects can enable IT to be viewed as a place where thing get done, which can prevent shadow IT organizations from popping up and filling the gaps....

IT is a place of enablement not a group of disablers!

IT is a place of enablement not a group of disablers! Information Technology can enable managers to make data based decisions that can result in higher profits and productivity. Information Technology can transform business processes to make employees more efficient and allow them to make more informed decisions. Information Technology can mobilize a sales and customer service force and empower them to exceed customer expectations. IT organizations can also be a drag on an organization and prevent the above items which I mentioned. A dean at a large research university recently wanted to start making data-based decisions. Personally, I love hearing that any leader wants to use data to make decisions. The problem that the dean was facing was that the department previously required a 2.75 GPA in lower division business core classes before allowing a student to take upper division business classes. The dean removed this requirement, which was met by both approval and disapproval from his staff. Did this requirement make a difference? Were students who did not have this requirement less successful than students who did? Are there other classes that more accurately predict student success? The answer is in the data, but the dean cannot access the data. The University set up an ERP system a few years ago which contains all student data. This system included a business intelligence solution that could allow the University to begin to make data driven decisions. However, even though years have passed since the implementation the IT department is still not ready to provide the dean with any information. The IT department is dealing with the common issue of being short staff and budget resources. They have opted to not release any business intelligence information since they are still in the process of cleaning data from their legacy systems. The IT prospective is that they want to be sure that the data is accurate to ensure that users trust the data that is being given to them. The Dean’s prospective is that the IT staff is power hungry and want to control who has access to what. The problem here is that even though IT is trying to ensure the success of the system, the dean sees years of no data and views the IT department as a disabler. The cost of becoming an disabler can be large. Managers respond by creating their own “shadow IT” organizations that provide the support that they cannot get out of IT. Even though this work is not coming out of the IT...

Enterprise mobile is more than mobile workflow

Enterprise mobile is more than mobile workflow I think the easiest use case for a mobile app is the workflow approval app. It makes sense that instead of waiting to check their email at the office, an executive can receive a notification on their mobile phone about a workflow request and approve it right there. However, this fails to change a business process, instead it just speeds up an existing process. There may be some benefit in this, but there is a larger benefit in utilizing mobile apps that revolutionize business processes and allow us to do things that were not possible before the age of the iPhone. The type of app that revolutionizes business processes takes advantage of mobile devices to enable exceptional customer service or to share and collect information in places where it was not possible before. For example, a mobile app that allows an insurance agent to gather pictures, gps location, send for a tow truck and file a claim while providing face to face customer service. Another example would be using mobility to give sales people on the field access to reports and information that may help them make the sale. This would empower the sales person to have access to data he couldn’t take with him or easily share before. I talk about a prototype mobile application that we created for mobilizing the completion of service orders in a video here. Our solution took advantage of GPS for looking up locations and allowed the app to drive technician’s work using his location. Successful ERP implementations required a change of business processes and mobility is no different. Processes that are paper or desktop based need to be reexamined and modified to fit the new mobile paradigm. If we try to replicate an ERP screen designed to have fields for every option imaginable in to a 4.8″ x 2.3″ screen, do not be surprised when the users pull out their pitchforks and torches. Instead of replicating the existing process, we need to collaborate to create new mobile optimized process. Do you have any examples of processes that have been revolutionized using enterprise mobility? Please share them below! featured image by Yutaka Tsutano @...

« Previous Entries

Powered by WordPress | Designed by Elegant Themes