Gogi Blog

Start a discussion or ask a question. Comments are welcome.


Our manufacturing expert had the opportunity to take a look at a deployment of the Plex Manufacturing System. Like many enterprise solutions they do many things. But only a couple are done well. We found that the Business Management Modules were of medium effort to deploy and worked to expectations. The modules related to manufacturing seem adequate. They do require more customization and the help of an outside consultant. In particular, the Inventor Management module does have off the shelf integration components to keep track of consumed items. However, the hardware offered does put the…

User: gogi - Date: 2020-03-08

Years ago developing on the MS plaform was  an exclusive activity. First you needed a version of Visual Studio to write code and compile it. That alone ran about 2500 per year. At the time MS had a licesning agreement that gave them rights to all code compiled using VS. It was and elitist club indeed. So what happened? Like capitalism tends to do, people were driven to innovation to free themselves from code tyranny. Hence Mono arrived on the scene. Mono is a compiler that works with MS languages thus removing some of the licensing shackles. Mono is well adapted and deployed across the…

User: gogi - Date: 2020-03-08

The Blockchain algorithm is running without issue on nodes across the globe for nearly two decades. Like all things technology, the time comes for an upgrade. That time has arrived for the Blockchain. SegWit2X is an upgrade to the Blockchain set to deploy on the Aug 1, 2017. The upgrade will double the size of the block and increase the Bitcoin network performance which is very much in need now and more so in the future. So, what is the problem? Just click the upgrade package and wait for it to install. There is fear that some crypto current platforms will not support the new blocks.…

User: gogi - Date: 2020-03-08

We are currently building custom MVC widgets for a client, and noticed a couple of things. First is that the development environment with Sitefinity Thunder is not the best. The provided Visual Studio project is part of the site installation. Since this client pushes content changes from their development installation, we would have to work from the same site. Work would be checked from the physical site and not in a development environment.  This slowed us down a great deal. What we did is to create a standard MVC project in Visual Studio and use pre and post build scripts to package…

User: gogi - Date: 2020-03-08

This blog will be the beginning of a series to frame the inner workings of Blockchains and how they are evolving in modern society.

Let us begin with this question, “What is a Blockchain”.  A Blockchain is a continuous record of individual transactions or “Blocks”. We might look at a Block as a receipt. When you make a purchase at a store, you are given a receipt for that purchase. When you think about it, that receipt is a record of two things. First it records how much money escaped your pocket. Next, it is proof of how much money was placed into a stores cash register.  It…

User: gogi - Date: 2020-03-08

When Progress bought Telerik and as Sitefinity consultants, we were concerned that the commitment to MVC might be lost. The .ASP life cycle has served its purpose for many years; however, modern client side complexities are better tackled with architecture capable of offering flexible client side packages and proven server side frameworks to handle the business needs.

Over the years we have made a number of custom Modules for Sitefinity.  The unusual ability for Sitefinity to allow custom development while giving content administrators creative control has made working with it…

User: gogi - Date: 2020-03-08

Sitefinity offers many ways for developers to add custom features. Often we find ourselves asking, “What would work best”? Create custom controls or a custom module. From our experience working with the CMS on various client projects, the answer resolves to the question, “Native logic and custom controls or custom logic and native controls”?   With a module there will be an entire configuration section that gets built for users to set global configuration. This may be a necessity, for example, when integrating Sitefinity to other applications such as SalesForce. Also, a Module’s native…

User: gogi - Date: 2020-03-08

We did a survey of food truck operators while researching features for an on-line web application which will serve that industry. We found some interesting things.

We asked if they needed an application to let their customers know where they are. All responded in the negative. The next question was if their customers needed an online menu. All responded in the negative. Intuitively, one would think these two questions are the two most important to that industry. They are not as you will see.

The next question was if their customers would like to place and order…

User: gogi - Date: 2020-03-08

The rapid growth of social media has been amazing no question. If you recall MySpace when it was an IPO, the model for raising a social media network was established with some concrete definition. First Hollywood was called upon to show the public how they regularly stay in touch with each other. The younger generation jumped on board quickly and blew up the number of users. Shortly after those younger users, came the small businesses looking to attract customers. Then after business adopted social media, came the politicians. Even with that many people MySpace still struggled to cash in…

User: gogi - Date: 2020-03-08

With the current administration’s intent to revamp the H1B program, this is a good time to have a look at what is in play.
The IT industry claims a need for H1B workers due to labor shortages. However, other views see the industry simply abusing opportunities for cheap labor at the expense of domestic works. This issue has been around for a while and not of much interest in the scope of this blog, so we will leave it alone.


What are of interest are the influences affecting the US IT industry for the longer term. Domestically we have an administration driving an “…

User: gogi - Date: 2020-03-08

How much native code is required for the app stores? “As much as you can get”.

A client recently asked us to make an existing app more “appy”. That is the word they used. Strangely though, the app was already deployed to Google Play and iTunes. It was based on a cross platform framework and they were having difficulty getting changes published because of insufficient native code. So there seems to be the case that there can be just too much framework and not enough “appyness”. Hmm, what should a growing business which connects with its customers through an app do? Make it more…

User: gogi - Date: 2020-03-08

Antyhing SalesForce related is not cheap. Not consider integrating your CMS with SalesForce and the letter "c" drops right out of the alphabet. There is exponential effort in getting a sales lead started as there is maintaining the contact. Why not let customers interested in your services or products start their own contant information. This Sitefinity module is just the thing. It lets you convert the standard Sitefinity forms builder into a self help SalesForce kiosk that allows customers to create their own contact information. It really is worth the money.

User: gogi - Date: 2020-03-08

If I had to pick right now which CMS is best, the answer would come from two questions. The first is, “Is it Windows based or LAMP?” The next question is, “how capable is the person/s managing the content?” There are not many Windows based CMS’s available in the market. Partially, because Sharepoint fills the need and smaller businesses mostly run on LAMP environments at a 30% discount from a Windows platform. However, PHP applications can run on IIS and so most of the emphasis moves to the second question.

How capable is the person/s managing the content? OK, sure Joomla,…

User: gogi - Date: 2020-03-08

I really like the way SalesForce setup its REST API. The intuitive nature makes it simple and unnecessarily complex. Two main principles are involved. The first is the URL path to the SalesForce object. Next is the JSON serialization of that object posted to the URL. That’s it. SalesForce knows if it is an update insert, delete, or anything else. The reverse is true also. GET from the URL path to the object and de-serialize from the JSON string. Of course NOQL queries can be uses as well with the same technique. CRUD interfaces for the standard objects can be built in less than an hour on…

User: gogi - Date: 2020-03-08

Joomla, DNN and other content management systems, once the high hopes of user experience and company information dispensing, are now just past memories. What they lacked was that ability to present information in a very specific way that only worked for that particular organization. They failed because many were designed as modular components. Yes they quickly changed content and gave more control over the content presentation but still confined the user to a pre-programmed experience.

Then came the SiteFinity CMS. Not long ago, we did a SalesForce integration project with it…

User: gogi - Date: 2020-03-08

Object reference is a common topic in software development. I don’t recall ever reading how to recognize it in an actual application outside of the code. So, this is good to add as part of my "Live and Learn" articles. We wrote a custom application for a manufacturer. That application had objects representing factory parts used to assemble widgets. Hand scanners were used to associate specific control numbers to each part and once the part objects got all of their properties populate they were sent off to another part of the application for migration into the Account and QA applications.…

User: gogi - Date: 2020-03-08

Do not let anyone change functionality during testing. This should be the later stage of preparations for going live and the business logic hopefully is determined by this time if all has gone well.

One of our projects generated over 70 test cases that the client had only one resource for. That resource happened to be a manager. During testing the manager noticed bugs of course, but also insisted on adding and changing features. I explained to them that doing so may invalidate previous test cases that will have to be re-checked. The manager agreed, and so feature changes were…

User: gogi - Date: 2020-03-08

A client bought a third party application that needed to share data with two others. Our task was to create an integration layer for the applications to move data back and forth with reliability. All of the others used integration tables as endpoints. This means they consumed data from special tables and perform internal adjustments as needed before finally committing the data to production. The thing to understand is that the data entered is not necessarily that committed to production. Polling the database would work most of the time, however this approached also…

User: gogi - Date: 2020-03-08

We launched and new app a few weeks ago. Now the tedious task of marketing and driving traffic is undergoing. Some of the metrics are surprising so far. Social media currently accounts for about 31% of all web traffic referrers as Shareaholics sees it. This is a huge amount of traffic coming from Facebook, Twitter, Google+, and etc. So far we are seeing about 3 referrers from about 10K+ viewers. Only a few years ago we would have expected at least 1% of the viewers come over to our site. Is Guerrilla marketing…

User: gogi - Date: 2020-03-08

The divine ratio (1.618). Although the number itself has minimal meaning in web design, The construction of magic rectangles with divine ratios is a strong web design approach. Creating magic rectangles using Fibonacci sequences creates a visible framework to work in. It also mirrors what we naturally see in the world around us and naturally attracts the eyes to the web site message.

How to do this? Draw two 1x1 squares next to each other. Next draw one 2x2 square adjacent to the previous squares. Now do a 3x3 square next to the previous. Finally do a 5x5 square next to the…

User: gogi - Date: 2020-03-08

The new Visual Studio 2015 has built-in GIT integration as well as Python support. The previous version included Bootstrap and other Open Source libraries. More so, the new VS supports mobile development across platforms. Is Microsoft going Open Source? Hardly! It's all about attracting developers. Microsoft was great at attracting developers to their platform, who in turn promoted their solutions. Back in the day, MS claimed partial ownership of software just because it was created on their platform. So the two worked together to the greater benefit of MS.

Things have changed…

User: gogi - Date: 2020-03-08

Requirements Assessment. Often the first process of many development cycles. The first of a linear sequence of processes within a cycle. Does it really need to be a linear sequential process? It does not! A current project was framed under a typical agile development cycle. However, when it came time to test, stake holders struggled to work with features without the entire production application as a reference. This generated a lot of additional code to proxy missing features and pushed the project past budget and delivery dates. I think part of the problem was the stake holders were not…

User: gogi - Date: 2020-03-08