We like to share ideas involving business, software development, design, our products, and more. We build software to make your small business better.

Summer is winding down. The light is shifting and a hint of autumn wafts on the breeze. If you haven’t taken a summer vacation yet, odds are you are a small business owner. Sure, you can work on your laptop outside in the dog days and cut back your hours, but those small concessions to the season do not yield the same benefits as same as taking a true break. One of the drawbacks of being your own boss is that the demarcation between work and the rest of your life becomes hazy: the dreaded schedule creep. Somehow the clear advantages of being able to match your work style to your natural circadian rhythms (I’m looking at you, night owls) and accommodate the inevitable tasks that need to be completed during standard business hours are offset by a tendency for work to expand to fill all of the nooks and crannies of available time. And with the intertwining of social media and enterprise it’s hard to tell what’s work and what’s not anymore.

Does it even matter? Common sense suggests that it does, and research confirms it. But that doesn’t mean it’s easy for the small business owner to close up shop, hop in the roadster, and head for the hills. At least, not to any vacation destination that doesn’t have high-speed internet access. Part of the problem is that the demands of your business don’t stop just because you’re on vacation, and many entrepreneurs don’t have anyone to cover for them. But for many, those facts obscure a deeper, darker truth: they can’t get into vacation mode. Much ink has been spilled over our collective inability to unplug, and groups like Digital Detox, based in Oakland, California, have formed to lend support to the tech-tethered seeking to break the habit.


At Cloudmanic Labs we have built a variety of software applications; some for customers and others for internal use, some that are bleeding-edge-brand-new and others that are more mature. In the past decade scaling our applications was never much of an issue. Our growth pattern was pretty linear, and we always ran our applications on the same collection of servers. To manage growth we simply added another server or upgraded the specs of our existing servers.

But over time, collocating newer and older applications on the same servers created a major problem. Before running new libraries (such as upgrading Node.js or PHP to the latest versions) we needed to make sure that our older software was compatible. Meaning we could not release new software as fast as we wanted to due to the risk of causing issues with our older products.

About 2 months ago we set out to solve this problem. Before making any changes we profiled our applications. In the past they were similar in terms of memory, CPU, disk I/O, and network usage: serve up some HTML, make some calls to the database, and support some Ajax calls. No more. Our new world is very real-time and mobile, and these factors stress our systems in different ways. Profiling helped us realize that each application has unique requirements and each needs to be on its own collection of servers. We see managing multiple server configurations as a small price to pay as we mature as a company.


Before we investigate this thought-provoking claim, let’s do a quick review. Conventional wisdom holds that the fundamental difference between business to business (B2B) and business to consumer (B2C) sales is the purchaser. Furthermore, although in both cases the marketing goal is to guide customers through the purchasing process, the tactics employed with businesses and consumers differ significantly. But things change, and the line between B2B and B2C is blurring.

Traditionally, B2B has been associated with old school sales techniques. Think dealmaking between a salesperson and a business representative—over golf and martinis, maybe. In contrast, B2C entails advertising across a variety of media to cultivate brand awareness and loyalty among individual consumers. Making the B2C sale has historically involved retailers and salespeople—but in many situations these intermediaries are fast becoming relics of the past. (So is the 3-martini lunch.) Social media and the troves of information available online now empower consumers to become well informed before making purchases. They are also more comfortable with—sometimes preferring—a self-directed role in transactions. Think self-service. At home in your pajamas at midnight, if you like.

In recent years B2B has begun to look a lot more like B2C. Although Skyclerk, Cloudmanic’s bookkeeping application for small businesses, is essentially a B2B product, we do not have dedicated salespeople. Instead, we market the product in the very same ways we would a consumer product. We use mobile apps stores, social networks, and online promotion to bring attention to Skyclerk and acquire customers. The product itself is our golf-playing salesperson—meaning it has to be designed to effectively sell itself.


We at Cloudmanic Labs recently launched a sweet new product: Photomanic, the best way to upload, organize, store, and enjoy your photos using the Evernote platform. But when I initiated the building of Photomanic some of my closest advisers were puzzled, asking questions along the lines of “WTF are you doing, Spicer?” Now, I’m the first to preach staying focused on your core, and Cloudmanic’s core is small businesses. Every other product we have launched has been geared toward helping small businesses thrive. So why build a photo application?

Stay Focused When You Build Your Bussiness

Well, when you are the leader of a company you are sometimes your own worst enemy. You have a team of people who can build whatever you want—and it’s up to you to decide which ideas to chase and which to drop. The thing is, the notion of Photomanic had been kicking around in my head for a few years. I would stay up late building prototypes, and daily I pondered how I could justify building Photomanic as a Cloudmanic product. Frankly, it was becoming a distraction. Maybe I am crazy, but I just had to build Photomanic to free my mind to focus on Cloudmanic’s core small business efforts.


The Cloudmanic Labs team built Photomanic, our new photo application for Evernote, in a month. Actually, the time from introducing the concept to launching Photomanic was less than 30 days. I am very impressed with the polished product that resulted from our hard and fast work. But why the rush, you ask? Well, on a whim we decided to enter Photomanic in the Evernote Devcup 2013 competition—a month before the deadline. Consequently, we learned a lot about building software under pressure. And as many of you know, I am not a big fan of deadlines.

I have always believed that any first release of a product requires about 500 hours of work. This estimate includes time for planning, design, programming, integration, and bug fixing. If realizing the feature set takes more than 500 hours, the plan for the 1.0 release is probably too ambitious. But we had only a fraction of 500 hours to build Photomanic, and we did not have time to explore many different ideas. In this case we deviated from our usual development process in some key ways:

  • I appointed myself the decider. Although we bounced ideas back and forth, I often had to cut discussion short and make a decision. Given the time crunch, the team understood the expediency of this dictatorial approach. Before the next release we will revisit those ideas we were unable explore fully.

  • We adopted a deadline-driven attitude. After listing everything we wanted Photomanic to do, we prioritized that list and set a deadline for each phase. Features that were not completed in time were shelved for the time being. Normally, we start with a list of tasks necessary to build a minimum value product and launch when all of those tasks have been completed.

  • We leveraged our existing infrastructure. One reason we succeeded under such a tight deadline is that over the past 5 years we have built a scalable platform for our products. Had we not made that early investment, we could not have built Photomanic so quickly. Even we were surprised by how smoothly things went. This experience confirmed my belief that building infrastructure should be a strategic objective of any young company.


If you are an Evernote user you probably know that its purpose is to be your external brain (and who couldn’t use one of those?). In fact, Evernote’s tagline is “remember everything.” Meaning, of course, everything you want to remember. The moments I most want to return to are often caught on camera: trips, parties, big events—including, recently, the birth of my first child. But there’s been a disconnect: that is, I store everything in Evernote except photos, which I manage with a different application.

Correction: I used to. Because I am pleased to introduce Photomanic, our new photo gallery app for Evernote. Using the simple yet robust Photomanic web interface (and soon mobile apps), you can easily upload your photos and organize them into albums in Evernote to enjoy whenever, wherever (and share, if you like).

Beyond keeping virtually all of your memories in one place (finally!), Evernote is the perfect place to store your photos for eternity (give or take). Because if you are an Evernote Premium user you get 1 gigabyte of storage per month—it’s a use-it-or-lose-it sort of thing so you might as well use it—and if you ever stop subscribing to Evernote, the storage you have paid for remains yours. With other services, if you stop paying you lose your storage space. Not cool.


I have been managing digital photos for a very long time. I am not a professional photographer—I’m like you: I love scrolling through my photos and remembering trips, parties, milestones, friends and family, what I looked like 20 pounds ago . . . and I want to be able to access these memories forever.

The problem is, I am on at least my 10th digital photo storage solution. As the technology has evolved I have switched from one software package to another, and more recently from one service to another. Switching is a pain because it entails moving and reorganizing my photos—again. Which brings me to this manifesto. Frankly, I think that all of the existing digital photo services are lacking. I have yet to find one that truly and elegantly meets my needs. Born of this frustration is the following manifesto describing my ideal digital photo service.


Paying a monthly fee to store photos adds up. After all, photos are one of those things most people accumulate over the course of their lives and then pass on to the next generation. Digital photo storage should not equal a monthly fee. I don’t need any more recurring bills.


Storing photos on a computer is risky. Many people know all too well the woe of failing to back up their photos. Locally stored photos also need to be transferred (repeatedly) from old to new computers. Photo storage should be effortless and permanent, and backup should be automatic.


Simply put, you own your photos—no one else does. End of story. Yet every photo service has different terms of service regarding photo ownership. A photo service should protect users’ photo ownership rights.


Not all photos are for sharing. Therefore, photos must be private unless the owner chooses to share them. When Google incorporated Picasa into Google+, for example, the burden of keeping photos private was placed on the user along with pressure to share photos with Google+. A photo service should ensure that users are in complete control of their photos.


Angular JSI am pretty vocal about what I think makes the kind of great programmer a manager should hire. A great programer is more than someone who has computer science fundamentals under control and knows how to write lots of comments in smartly modularized code. These skills are, so to speak, merely the cost of admission. I am on the record saying that a great programmer needs to be passionate and needs to hang out with the right people.

When it comes to PHP, I meet my own criteria. I am very passionate about PHP, and I follow and hang out with the best minds in the PHP world. Before I go to bed each night I search around on Github for new and interesting PHP libraries. And I get giddy waiting to see what Phil Sturgeon and Taylor Otwell are going to do next. Until recently, however, I did none of these things in relation to Javascript—a clear sign that I was not a great Javascript programmer.

Which is why I never should have hired myself. About a year ago I Googled around looking for a new Javascript framework because Jquery just wasn’t adequate. I reviewed all of the possible candidates, including AngularJs. None appeared to meet my design goals so I came to the conclusion that Cloudmanic Labs needed to write our own Javascript framework. We ended up investing thousands of dollars worth of time to develop CloudJs, and we are pretty proud of it. But there’s a catch . . . wait for it.

Recently I began putting in extra effort to become as connected with the Javascript community as I am with the PHP community. Frankly, I wanted to start promoting CloudJs as we got closer to launching version 1.0, but also I had become pretty passionate about Javascript. While hanging out around the Javascript watercooler I kept hearing about the AngularJs framework that I had dismissed. When I finally dug into it, I realized that AngularJs and CloudJs are essentially one and the same—except that AngularJs is far more mature. And so, because there is nothing that CloudJs does better than AngularJs, Cloudmanic Labs is going to adopt AngularJs.


It turns out that if you do it right, just standing there can be pretty powerful. Think Wonder Woman: chest open but not puffed, legs apart, head level, one or both hands on the hips. Assume that stance and your body will release hormones that make you feel confident and calm. It’s sort of like putting the proverbial cart before the horse: instead of allowing your posture to merely reflect your emotions, you can use it to elevate your mood and generate the self-confidence you need to navigate stressful situations. Because even born leaders like yourself have off days.

Striking a super hero pose might sound silly now, but it can save your bacon the next time you have to pitch an idea to a difficult client, deliver negative feedback to a coworker, or plead your sorry case to a judge. Social science researchers at preeminent business schools (like Harvard) have identified the primary hormones associated with so-called expansive postures as testosterone, which correlates with dominance and a willingness to take risks, and cortisol, which is related to stress. When you gotta deliver, you want your testosterone high and your cortisol low.

The physiological effects of holding a commanding pose for just two minutes last about 20, but the benefits of fine tuning your posture in general are immeasurable. Your mother always said to stand up straight, and she was so right. Your carriage changes your self-perception and influences how favorably others perceive and respond to you. Adopt an expansive posture and you will seem more credible and attractive. But overdo it by going all stiff or alpha primate and you will have exactly the opposite effect.


I am a pretty bleeding edge guy when it comes to technology. In fact, as the manager of Cloudmanic Labs I am willing to invest to upgrade our systems with the newest technologies before building additional features or products. To be clear: with respect to deploying code into production bleeding edge does not mean buggy alpha software. Rather, it signifies employing novel but tested libraries, technologies, and design patterns.

Bleeding Edge Technology

The major counterargument to being bleeding edge focuses on end users, who typically don’t even know which technologies products are use. Why replace the old technology with bleeding edge technology if users don’t care? I say this argument is short sighted. When users adopt new software, they hope to use it for a long time because switching can be annoying. But developers who allow complacency to set in and fail to keep up with technological innovations will one day wake up and realize that updating their product is nearly impossible. Advancing software to the next generation is not an easy task and the technology changes blindingly fast. Therefore, if you are not on the bleeding edge you are late.