<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Unstructured thoughts on just about everything — and nothing.</description><title>Rambling/Rumbling</title><generator>Tumblr (3.0; @ramblingrumbling)</generator><link>http://ramblingrumbling.tumblr.com/</link><item><title>Java is as Java does</title><description>&lt;p&gt;When Oracle launched its Fusion Apps effort back in &lt;strong&gt;2005&lt;/strong&gt; (yes, that&amp;#8217;s 6+ years ago), it seems to follow the right idea of &lt;a href="http://ramblingrumbling.tumblr.com/post/16351552203/kill-your-platform-again-and-again"&gt;starting from scratch&lt;/a&gt; when building a next generation solution. Who wouldn&amp;#8217;t want to have a megasuite of solutions that promises to encapsulate all the functionality of every ERP suite that Oracle has built or acquired?&lt;/p&gt;
&lt;p&gt;Sounds great on the surface. Now that&amp;#8217;s 2012 (or &lt;a href="http://www.webexhibits.org/calendars/calendar-chinese.html"&gt;4710&lt;/a&gt; - Happy Lunar New Year) and, after a few left turns, we still only see &lt;a href="http://www.oracle.com/us/products/applications/fusion/index.html"&gt;a small subset of capabilities&lt;/a&gt; that were promised in the middle of the last decade.&lt;/p&gt;
&lt;p&gt;Wait, you say. You said that people are now able to quickly create websites and applications with today&amp;#8217;s tools.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s right &amp;#8212; I did say that.&lt;/p&gt;
&lt;p&gt;However, I don&amp;#8217;t count Java as part of &amp;#8220;today&amp;#8217;s tools.&amp;#8221;&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s probably my baggage as a person starting in client-server way back when, but the enterprise solutions that have been successful in the past have always been based on a platform that allows the developer to stay at a high level and focus on the process, not the technology. There&amp;#8217;s a reason why SAP developed ABAP, PeopleSoft had PeopleTools and Salesforce.com has APEX. And if you want to go way back, COBOL was so huge when Big Blue was really the only choice you had.&lt;/p&gt;
&lt;p&gt;(Sidenote: I worked for a small consulting firm that did a lot of PowerBuilder client-server apps. I always thought it was a mistake for Sybase/PowerSoft to keep its focus on tools when it should have built a suite of enterprise apps based on its technology)&lt;/p&gt;
&lt;p&gt;Java is definitely better than C and C++ in that respect. However, Java is too low level to be an effective development environment for business solutions. From what I&amp;#8217;ve seen, it just takes too much work to get stuff done. The only reason why it became so popular during Web 0.9 is because it was really the only &amp;#8220;blessed&amp;#8221; platform that seemingly could scale to large websites and handle enterprise requirements.&lt;/p&gt;
&lt;p&gt;Times have changed, and better tools have emerged from the FOSS world that come much closer (but not entirely) to meet the needs for developing business solutions quickly. You see that today with &lt;a href="http://www.coupa.com"&gt;Coupa&lt;/a&gt; and Ruby and &lt;a href="http://www.expensify.com"&gt;Expensify&lt;/a&gt; with PHP.&lt;/p&gt;
&lt;p&gt;Yes, what platform and development environment is only a small part of whether or not a company will be successful. However, if you want fast innovation, I would look to see what&amp;#8217;s coming up rather than just rely on the incumbents in the space that rely on an ossified platform.&lt;/p&gt;
&lt;p&gt;I used to work at a company where the head guy kept deriding the concept of two guys in a garage when it came to business solutions. Funny how a small company of 15 (including non-engineers) has been able to innovate much more quickly than a team of 20+ engineers at his company that supposedly has a unique platform that is at the core of its competitive advantage.&lt;/p&gt;
&lt;p&gt;If what we see with Fusion Apps is what we can get after 6+ years of development effort, that to me is either an indictment of Oracle&amp;#8217;s Fusion approach or lack of ability to manage innovation while balancing the needs of its legacy suites.&lt;/p&gt;
&lt;p&gt;Which is worse?&lt;/p&gt;</description><link>http://ramblingrumbling.tumblr.com/post/16463578867</link><guid>http://ramblingrumbling.tumblr.com/post/16463578867</guid><pubDate>Wed, 25 Jan 2012 06:02:05 -0800</pubDate></item><item><title>Kill Your Platform... Again and Again...</title><description>&lt;p&gt;Okay, now that I&amp;#8217;ve said that &lt;a href="http://ramblingrumbling.tumblr.com/post/16140735495/platform-as-a-boat-anchor"&gt;having a platform can stifle innovation&lt;/a&gt;, let&amp;#8217;s talk more about the baggage that comes with one.&lt;/p&gt;
&lt;p&gt;Like any legacy code, platforms can become &amp;#8220;brittle&amp;#8221; (a phrase I heard quite a bit in my last two stops) over time, which requires constant tinkering and patching to keep things moving forward. Platforms become even more exposed if they were repurposed mid-life to do something different, like, move from client-server to web, or on-premise to SaaS.&lt;/p&gt;
&lt;p&gt;I understand the desire to migrate IP as paradigms shift - I even believed in this approach for a long time. &lt;/p&gt;
&lt;p&gt;I don&amp;#8217;t anymore. &lt;/p&gt;
&lt;p&gt;There are a few things that have changed my mind.&lt;/p&gt;
&lt;p&gt;I have seen the issues with leveraging a legacy platform that wasn&amp;#8217;t designed from the very beginning to address today&amp;#8217;s needs. Performance and scalability always seem to be a problem, which makes sense. What used to be the golden standard, &amp;#8220;enterprise scale&amp;#8221; of up-to hundreds of thousands of users is no match for what I&amp;#8217;ve been calling &amp;#8220;cloud scale&amp;#8221; of millions of users in thousands of organizations.&lt;/p&gt;
&lt;p&gt;Furthermore, architecture choices that made sense in the past don&amp;#8217;t always work in today&amp;#8217;s social and collaborative world. For example, the 2000-era architectural assumption of strict isolation of companies &amp;#8212; whether you call it a partition, VPD or realm, it&amp;#8217;s all the same &amp;#8212; makes it difficult to collaborate and aggregate information across companies (it also was a way for engineering to cheat thinking through how to configure multiple business units or orgs within the same enterprise, but that&amp;#8217;s for another post).&lt;/p&gt;
&lt;p&gt;Finally, with the ability for good engineers to rapidly code applications with today&amp;#8217;s open source tools and capabilities (Ruby-on-Rails, PHP, etc.), I am still amazed how quickly new, innovative apps can be built from scratch. And these tools continue to improve and mature, which makes leveraging your old hairball even less sense.&lt;/p&gt;
&lt;p&gt;An interesting recent example of not leveraging a platform is Google+. Remember when it was first released? The only thing that really integrated G+ with the rest of the Google platform was its use of Google Accounts for identity (and that navigation bar &amp;#8212; not sure if I like it even now). Everything else was standalone - at least it looks that way from the outside. Google was even mocked for rolling out G+ without search (and now that it has, the FTC is interested&amp;#8230;), but they were able to get their social network out quickly and add integrations along the way.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve also heard from various contacts and acquaintances at Google that they essentially have a new platform every 2-4 years, which allows them to take advantage of advances in programming, tools and approaches. &lt;/p&gt;
&lt;p&gt;Of course the counter-example to Google is Oracle and their Fusion Apps long march. That&amp;#8217;s for later.&lt;/p&gt;</description><link>http://ramblingrumbling.tumblr.com/post/16351552203</link><guid>http://ramblingrumbling.tumblr.com/post/16351552203</guid><pubDate>Mon, 23 Jan 2012 16:03:06 -0800</pubDate></item><item><title>Pricing as a means to an end, not an end</title><description>&lt;p&gt;Every so often, you see discussion about how pricing and packaging is so &amp;#8220;unfair&amp;#8221; to consumers, and how it needs to be more transparent, etc. The most recent posting is here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.theverge.com/2012/1/20/2718375/unlimited-data-is-dead-so-lets-fight-a-smarter-fight"&gt;Unlimited data is dead, so let&amp;#8217;s fight a smarter fight&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It is a fairly well-written manifesto on how consumers need to fight for transparency in data pricing. In general I agree with this sentiment as a consumer. However, there is a basic problem with taking a narrow or silo&amp;#8217;d view of how data is priced without looking at the overall revenue model of a company.&lt;/p&gt;
&lt;p&gt;Everyone is focused on the structure of the pricing - the buckets, the tiers and so forth. However, what really matters is the overall revenue to the company and the margins associated with it. The pricing is no more than a &amp;#8220;calculator&amp;#8221; to dial up the price you pay every month.&lt;/p&gt;
&lt;p&gt;Consequently, you can&amp;#8217;t just focus on the data plan - you need to look at the entire picture, including SMS/voice/handset subsidy, and understand that if you want to pay less for one thing, you may end up having to pay more for something else. The cost to service a customer doesn&amp;#8217;t necessarily change at the same rate as customer usage behavior. Therefore, the company needs to figure out how to either maintain (or raise) it&amp;#8217;s revenue or reduce its costs, which is much harder.&lt;/p&gt;
&lt;p&gt;You see this issue anywhere there is bundling. Cable is yet another example of this. People want choice - the want to pick only the channels they watch and skip the rest. From a consumer&amp;#8217;s perspective it seems that all they would have to do is this:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;I pay for 50 channels for $75 bucks&lt;/li&gt;
&lt;li&gt;I only want 5&lt;/li&gt;
&lt;li&gt;Therefore I should only pay $7.50 for those five channels ($75/50 = $1.50 per channel)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Of course, it doesn&amp;#8217;t work that way - there&amp;#8217;s a lot of fixed cost associated with delivering content that somehow needs to be paid. There&amp;#8217;s no way that Comcast or Time Warner could deliver just Travel Channel to you for $1.50.&lt;/p&gt;
&lt;p&gt;(I&amp;#8217;m not justifying cable&amp;#8217;s pricing levels - I think it&amp;#8217;s essentially monopoly pricing. I&amp;#8217;m just using it to illustrate a point)&lt;/p&gt;
&lt;p&gt;Let&amp;#8217;s look at an offline example of this. One part of the completely awful Dodd-Frank (yes, Chris Dodd, who currently chairs the MPAA, drove this POS through) bill is the Durbin Amendment, which capped swipe fees for debit cards. Well, guess what - Financial Services companies were using that revenue to &amp;#8220;subsidize&amp;#8221; things like free checking accounts and no annual fee credit cards.  Maintenance fees for all types of accounts went up.&lt;/p&gt;
&lt;p&gt;The bill was supposed to help the people it ended up hurting. Oops.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s why it&amp;#8217;s important to look at the big picture when thinking about a company&amp;#8217;s pricing. You need to step back and understand how the company and its shareholders expect to make money and how it impacts the other offerings it has.&lt;/p&gt;
&lt;p&gt;In the end, the real way to change pricing is for a new entrant to be able to deliver these desirable individual services in a profitable way that competes with the incumbents, not mandating more and more rules that may have unintended market consequences.&lt;/p&gt;
&lt;p&gt;Competitive Market &amp;gt; More Government Mandates&lt;/p&gt;</description><link>http://ramblingrumbling.tumblr.com/post/16177798605</link><guid>http://ramblingrumbling.tumblr.com/post/16177798605</guid><pubDate>Fri, 20 Jan 2012 09:58:27 -0800</pubDate></item><item><title>Platform as a Boat Anchor</title><description>&lt;p&gt;As a veteran in the enterprise business applications space, it is interesting to see the long-held paradigms of software development being blown up with the commoditization of infrastructure and development tools. Many of the traditional views of optimizing R&amp;amp;D investment no longer hold true, yet I see technology organizations continuing to cling to creaking platforms and wondering why they can&amp;#8217;t hire the best engineers out there.&lt;/p&gt;
&lt;p&gt;On a conceptual level, platforms provide a way to scale up engineering resources, allowing engineering teams to leverage shared capabilities and resources for greater productivity. It should also make it easier to integrate processes and data. &lt;/p&gt;
&lt;p&gt;That&amp;#8217;s all great - motherhood and apple pie kind of stuff.  &lt;/p&gt;
&lt;p&gt;However, from what I&amp;#8217;ve seen, it&amp;#8217;s very hard to execute well. If not managed properly, a platform team becomes more of a shared service team where any little piece of functionality that could be shared, whether it is or isn&amp;#8217;t, ends up being pushed to this team. Soon, the platform team is the largest R&amp;amp;D team in the whole company.&lt;/p&gt;
&lt;p&gt;Okay, fine, so it&amp;#8217;s the largest team &amp;#8212; that in itself isn&amp;#8217;t a problem. However, what can spiral out of control is the increasing reliance on this team to build out some missing part of the platform to enable new functionality. These dependencies kill the ability for product teams to innovate quickly. &lt;/p&gt;
&lt;p&gt;Why does that happen? &lt;/p&gt;
&lt;p&gt;Since platform isn&amp;#8217;t always considered a &amp;#8220;real product,&amp;#8221; the proper packaging of platform capabilities is often the first to go when it is time to cut scope. No proper documentation resources allocated. Inadequate or missing APIs/services for other teams to leverage.&lt;/p&gt;
&lt;p&gt;The end-result is that all innovation becomes dependent on engineers on the platform team to do their part to make things work.&lt;/p&gt;
&lt;p&gt;Furthermore, platform always has the image of doing the &amp;#8220;cool/difficult/innovative stuff,&amp;#8221; and the best engineers often end up joining the platform team. Capabilities that are on the fringe of being platform migrate with those engineers to the platform team. The platform becomes one big hairball of functionality that only platform engineers can decipher.&lt;/p&gt;
&lt;p&gt;Consequently, roadmaps become blocked on &amp;#8220;required&amp;#8221; platform work. The platform team becomes the arbiter of all development for the entire organization. Great for the owners of platform, but not so great for the rest of the company.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s why I always say &amp;#8220;a platform that requires platform engineers is not a platform at all&amp;#8221;&lt;/p&gt;
&lt;p&gt;How can an R&amp;amp;D team ensure that development work doesn&amp;#8217;t get sucked into the Platform Black Hole?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Platform as a product.&lt;/strong&gt; Ensure that the proper packaging is done so that capabilities by platform can be consumed by other engineering teams efficiently. If these capabilities aren&amp;#8217;t fit for customer consumption, why would it be ok to send it off to the engineer in the next cube?&lt;/p&gt;
&lt;p&gt;This focus is especially important if your technology organization is, say, a cloud/SaaS provider that is reliant of internal services to get customers up-and-running. I don&amp;#8217;t know how many times I debated with engineers who just said &amp;#8220;let&amp;#8217;s just let the services guys configure it.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Strict definition of platform.&lt;/strong&gt; Does it really need to be in platform? For example, given how much closer the app teams are to customers, it makes sense for those teams to own business-related objects and processes, even if they are shared among multiple solutions.&lt;/p&gt;
&lt;p&gt;Of all the technology companies I&amp;#8217;ve worked, I have to say that PeopleSoft had this part nailed. It wasn&amp;#8217;t entirely perfect, but it was more clear here than anywhere else what belong to PeopleTools and what needed to be in my products in SCM/SRM.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Innovation at the edges.&lt;/strong&gt; From my experience on both the app side and platform, a lot more innovation happens on the app side. Give the freedom (and architecture) to app teams to innovate and do interesting things without being shackled to the legacy way of doing things.&lt;/p&gt;
&lt;p&gt;Again, I speak from my experience trying to build and innovate an employee-facing app in a back-office focused company. The engineering team ended up having to do a bit of hacking of the platform to incorporate better UI elements and create our own workflow engine. Yes, my counterpart in engineering made sure it was sanctioned by the platform team, but we did all the work.&lt;/p&gt;
&lt;p&gt;In the end, having an effective platform is as much a management priority as it is a technology one. &lt;/p&gt;
&lt;ul&gt;&lt;/ul&gt;&lt;div&gt;&lt;/div&gt;</description><link>http://ramblingrumbling.tumblr.com/post/16140735495</link><guid>http://ramblingrumbling.tumblr.com/post/16140735495</guid><pubDate>Thu, 19 Jan 2012 16:00:39 -0800</pubDate></item><item><title>Hello World</title><description>&lt;p&gt;Let me the 9,432,152,438th blog to start with a &amp;#8220;Hello World&amp;#8221; entry. In fact, it&amp;#8217;s probably my third time if you count the corporate blogs that I&amp;#8217;ve started&amp;#8230;.&lt;/p&gt;
&lt;p&gt;Anyway, welcome to my little corner of the net. Nothing fancy here - just a bunch of (mostly) unfiltered opinions. Stay tuned!&lt;/p&gt;</description><link>http://ramblingrumbling.tumblr.com/post/12198076531</link><guid>http://ramblingrumbling.tumblr.com/post/12198076531</guid><pubDate>Tue, 01 Nov 2011 08:24:00 -0700</pubDate></item></channel></rss>
