{"id":3006,"date":"2016-12-03T02:00:35","date_gmt":"2016-12-03T10:00:35","guid":{"rendered":"http:\/\/softwareengineeringdaily.com\/?p=3006"},"modified":"2021-11-05T04:43:06","modified_gmt":"2021-11-05T11:43:06","slug":"adforprize","status":"publish","type":"post","link":"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/","title":{"rendered":"Adforprize"},"content":{"rendered":"<p class=\"p1\"><span class=\"s1\">There are multiple paths to constructing a piece of software from start to finish. <\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">An individual programmer can build an entire product from scratch in a couple days. A giant corporation can commission a project and delegate responsibilities to hundreds of people. An open source community can use the wisdom of the crowds to efficiently build an operating system.<\/span><\/p>\n<p class=\"p2\"><span class=\"s1\">Today\u2019s episode is about another path for building software, and my own experience traveling that path. I designed and contracted an app called Adforprize that is now available on the iOS app store.<\/span><\/p>\n<p class=\"p2\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png\"><img fetchpriority=\"high\" decoding=\"async\" data-attachment-id=\"3007\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&amp;ssl=1\" data-orig-size=\"468,311\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=300%2C199&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&amp;ssl=1\" class=\"size-medium wp-image-3007 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?resize=300%2C199\" alt=\"untitled\" width=\"300\" height=\"199\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?resize=300%2C199&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?w=468&amp;ssl=1 468w\" sizes=\"(max-width: 300px) 100vw, 300px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\"><b>Designing an app and contracting it out to an engineer to build is a worthwhile exercise for most people in the tech industry&#8211;whether you are an engineer or not.<\/b><\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">This post has two main arguments:<\/span><\/p>\n<ol class=\"ol1\">\n<li class=\"li4\"><span class=\"s1\">the process of designing and prototyping an app is useful and educational for anyone<\/span><\/li>\n<li class=\"li1\"><span class=\"s1\">it is now cheap and effective to hire a contractor to build a working version of your prototype<\/span><\/li>\n<\/ol>\n<p class=\"p1\"><span class=\"s1\">As with the previous monologue episodes such as <a href=\"https:\/\/softwareengineeringdaily.com\/2016\/02\/12\/10-philosophies-for-developers\/\"><span class=\"s3\">10 Philosophies for Engineers<\/span><\/a> and <a href=\"http:\/\/softwareengineeringdaily.com\/2016\/08\/07\/you-are-not-a-commodity\/\"><span class=\"s3\">You Are Not a Commodity<\/span><\/a>, there are no advertisements on this episode. Please email me any feedback you have&#8211;jeff@softwareengineeringdaily.com<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">Why This Matters To You<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">Everyone has an app idea, and many of them are pretty good. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">You have probably had a conversation with a friend where one of you says \u201chey, wouldn\u2019t it be great if there was a 2-sided marketplace for bacon?\u201d Or \u201chey, wouldn\u2019t it be great if there was an app where users could take a selfie and instantly see what celebrity they resemble the most?\u201d<img decoding=\"async\" data-attachment-id=\"3021\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/prizes_1\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?fit=255%2C454&amp;ssl=1\" data-orig-size=\"255,454\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"prizes_1\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?fit=169%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?fit=255%2C454&amp;ssl=1\" class=\"size-medium wp-image-3021 alignright\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?resize=169%2C300\" alt=\"prizes_1\" width=\"169\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?resize=169%2C300&amp;ssl=1 169w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_1.png?w=255&amp;ssl=1 255w\" sizes=\"(max-width: 169px) 100vw, 169px\" data-recalc-dims=\"1\" \/><\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">These things <i>would<\/i> be cool! But most ideas end with the ideation. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Who has the time to implement these things? Most of us are busy at<br \/>\nwork, where we spend our time and mental energy dealing with the technical complexity of our jobs.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">If you are a \u201c<a href=\"http:\/\/bits.blogs.nytimes.com\/2014\/09\/28\/the-google-formula-for-success\/?_r=0\"><span class=\"s3\">smart creative<\/span><\/a>\u201d, when you get home from your job, you probably don\u2019t want to spend your leisure hours reading iOS documentation and slowly learning to write the necessary code for your bacon marketplace app.<br \/>\n<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Smart creatives who have a busy full-time job often have a hobby with more immediate gratification, like playing an instrument or blogging. Some of us also write apps on the side, but if you don\u2019t already have all the requisite skills for writing an app, the prospect of reading tutorials and documentation can make the feeling of ever publishing an app seem so distant.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><br \/>\n<img decoding=\"async\" data-attachment-id=\"3022\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/prizes_2\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?fit=255%2C454&amp;ssl=1\" data-orig-size=\"255,454\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"prizes_2\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?fit=169%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?fit=255%2C454&amp;ssl=1\" class=\"size-medium wp-image-3022 alignleft\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?resize=169%2C300\" alt=\"prizes_2\" width=\"169\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?resize=169%2C300&amp;ssl=1 169w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/prizes_2.png?w=255&amp;ssl=1 255w\" sizes=\"(max-width: 169px) 100vw, 169px\" data-recalc-dims=\"1\" \/>There are many people listening to this who are<br \/>\nbetter at sales, marketing, design, or product management than they are at programming&#8211;they want to build an app. One common narrative is that if these people want to see something built, they need to learn to program, and that\u2019s not true.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><br \/>\nThere is a more fun, fulfilling way to build an app than learning to code in Swift or React Native&#8211;contracting out the programming to someone else.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><i>Designing<\/i> an app is a fun exercise. Building a prototype with tools like Sketch, InVision, and Keynote is free and frictionless. Most people listening to this probably spent some time drawing in KidPix or Microsoft Paint or PhotoShop when they were a kid. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Most of us know how to draw at some basic level, because we spend all<\/span><\/p>\n<p>day seeing and understanding images&#8211;drawing is second nature to anyone who can understand shapes. Similarly, we all know how to design apps because we spend all day using them. We understand the purpose of a button or a slider or a swipe.<img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3020\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/share_1\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?fit=255%2C454&amp;ssl=1\" data-orig-size=\"255,454\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"share_1\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?fit=169%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?fit=255%2C454&amp;ssl=1\" class=\"size-medium wp-image-3020 alignright\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?resize=169%2C300\" alt=\"share_1\" width=\"169\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?resize=169%2C300&amp;ssl=1 169w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/share_1.png?w=255&amp;ssl=1 255w\" sizes=\"(max-width: 169px) 100vw, 169px\" data-recalc-dims=\"1\" \/><\/p>\n<p class=\"p4\"><span class=\"s1\">But most of us have no idea how to configure the code around this user experience&#8211;the buttons and sliders and TextViews.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Along with the design process, <span class=\"Apple-converted-space\">\u00a0 <\/span>the business ideation process is also fun. It\u2019s fun to imagine business models and viral loops and ways to drive user engagement. But without the capability to build the app that embodies your business ideas, it is less fun to think about those ideas. And again&#8211;most of us don\u2019t relish the idea of struggling through the compiler errors and Stack Overflow posts that an app implementation requires.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">We\u2019ve all become product designers. We are using our phones all day&#8211;most of us have naturally developed a good intuition for how an app <i>should <\/i>function.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Product design ability is naturally acquired by being steeped in technology all day. If you are an employee in marketing, sales, or design (and certainly engineering) at a tech company, you will naturally learn how to think about product.<\/span><\/p>\n<p class=\"p4\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3019\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-2\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?fit=468%2C263&amp;ssl=1\" data-orig-size=\"468,263\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-2\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?fit=300%2C169&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?fit=468%2C263&amp;ssl=1\" class=\"size-medium wp-image-3019 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?resize=300%2C169\" alt=\"untitled-2\" width=\"300\" height=\"169\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-2.png?w=468&amp;ssl=1 468w\" sizes=\"(max-width: 300px) 100vw, 300px\" data-recalc-dims=\"1\" \/><\/p>\n<p class=\"p4\"><span class=\"s1\">Importantly: you probably even have a few good product ideas yourself!<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><b>This article is about why and how to prototype your own ideas and communicate your intent as a product designer&#8211;which is an incredibly fun process.<\/b><\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">If you can afford it, you can then hand off your prototype to a contractor for engineering implementation.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Working at a tech company, you might have accumulated some excess cash. You can invest that $5,000 that you have sitting around by contracting a product in your spare time. This can be a much better investment than something like stocks or ETFs, and it is more satisfying and durable than taking an expensive vacation. <\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">The experience of contracting a product teaches you skills that might not be stressed in your 9-5 job: management, product design, user experience, budgeting, communications, and engineering limitations.<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">Why Now?<\/span><\/h2>\n<p><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3018\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-3\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?fit=468%2C232&amp;ssl=1\" data-orig-size=\"468,232\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-3\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?fit=300%2C149&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?fit=468%2C232&amp;ssl=1\" class=\"aligncenter wp-image-3018 size-full\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?resize=468%2C232\" alt=\"untitled-3\" width=\"468\" height=\"232\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?w=468&amp;ssl=1 468w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-3.png?resize=300%2C149&amp;ssl=1 300w\" sizes=\"(max-width: 468px) 100vw, 468px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\">The first version of Uber was written by a contractor. The Uber founders clearly communicated the specification for their product to the contractor, and they got what they asked for.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Contracting Uber was easy for the founders. They had millions of dollars from their earlier startups, they had a network of contractors to choose from, and they had experience hiring people.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">There is now a set of technologies that are enabling this for the average person.<\/span><\/p>\n<ul>\n<li class=\"li4\"><span class=\"s1\"><b>Reputation marketplaces<\/b>: Upwork, Fiverr, and other talent marketplaces have a rating system that holds workers accountable in the same way as Uber and Airbnb. Contractors who have maintained a high reputation through hundreds of hours will do your job well. These marketplaces also provide massive accountability and price transparency. A contractor who screws over naive customers cannot sustain a high rating. Some people have had bad experiences with Upwork and Fiverr, but that happens with all marketplaces.<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>Better communication tools and behaviors<\/b>: InVision lets you easily convey your product idea. Slack, Trello, Campfire, etc make it easy to communicate with your contractor on a regular basis. <\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>Minimal-effort scalability infrastructure<\/b>: Heroku, Amazon S3, and other autoscaling products remove complexities. This makes it much more straightforward to architect a typical application for a single contractor.<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>App mechanics<\/b>: Our expectations and intuitions for how certain types of apps should work are becoming refined. From a recent NY Times Popcast discussion: \u201c<i>Musical.ly is a social app. It feels a little bit like Vine. A lot of <\/i><b><i>familiar mechanics<\/i><\/b><i>. You like things, you follow people, it has a timeline.<\/i>\u201d<\/span><\/li>\n<\/ul>\n<p class=\"p4\"><span class=\"s1\">The last point deserves further emphasis. Cool new apps are often interesting remixes of well-defined mechanics.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Mechanics such as newsfeeds, likes, photo sharing, map-based ride-sharing overlays, swiping interfaces, and social media integration are a palette of interesting ingredients that have lots of new-product mileage left.<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3017\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-4\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?fit=468%2C271&amp;ssl=1\" data-orig-size=\"468,271\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-4\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?fit=300%2C174&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?fit=468%2C271&amp;ssl=1\" class=\"aligncenter wp-image-3017 size-full\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?resize=468%2C271\" alt=\"untitled-4\" width=\"468\" height=\"271\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?w=468&amp;ssl=1 468w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-4.png?resize=300%2C174&amp;ssl=1 300w\" sizes=\"(max-width: 468px) 100vw, 468px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p1\"><span class=\"s1\">These types of features are so widely used that their implementation is well-understood and documented. You don\u2019t need to find an expensive contractor who specializes in swiping or newsfeed architecture&#8211;you will be paying a reasonable market rate.<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">\u201cWantrepreneurs\u201d<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">Programming ability is not a prerequisite for being a good product designer and operator.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">And yet&#8211;the negative term \u201cwantrepreneur\u201d is used to describe someone who has ideas but has not built\/shipped anything substantive. If you listen to <a href=\"https:\/\/www.producthunt.com\/podcasts\"><span class=\"s3\">Silicon Valley type of podcasts<\/span><\/a>, you will occasionally hear a venture capitalist or angel investor use the word. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">It\u2019s offensive and shame-inducing and should be removed from our lexicon. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">But&#8211;it does accurately describe many people in the tech industry (albeit in a condescending and discouraging manner). Oftentimes, this same type of person wants to know what to do if they cannot find a \u201ctechnical co-founder\u201d (someone to build and iterate on a product). <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Contemporary product development literature mostly advises against contracting, but it can be a good strategy if you have a product idea you really want to get out the door into the hands of users.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><b>The conventional reasoning against hiring a contractor to build your product<\/b> <i>(and why it is mistaken)<\/i>:<\/span><\/p>\n<ol class=\"ol1\">\n<li class=\"li4\"><span class=\"s1\"><b>A contractor has no vested interest and might do sloppy work <\/b><i>(the vested interest is the rating system that allows them to keep working on their platform like Upwork&#8211;where they will have 100+ hours of prior work if you are discerning employer)<\/i><\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>If you decide to iterate, the contractor can raise the price for subsequent iterations <\/b><i>(again, a contractor on a reputation platform is unlikely to do this and if they do you can find someone else; switching cost is not that high)<\/i><\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>If the contractor does sloppy work, you won\u2019t know if it\u2019s sloppy because you are not technical <\/b><i>(you can ask a friend who is a developer to look over the finished code base; if your friend says it is sloppy then you can find a new contractor for future iterations)<\/i><\/span><\/li>\n<li class=\"li4\"><span class=\"s1\"><b>Even if the MVP works, it will fall over if you hit any amount of scale <\/b><i>(unlikely to happen if you deploy to Heroku\/AWS)<\/i><\/span><\/li>\n<\/ol>\n<p class=\"p4\"><span class=\"s1\">In today\u2019s tech scene, there are tons of people without the ability to code who nonetheless have excellent product design abilities.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Whether you are in sales, marketing, or customer service, if you want to build a product someday, or even if you just want to move from your current role to a role in product management or design&#8211;consider designing and prototyping an app, and having a contractor build it.<\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">If you have specific ideas for what you want built, and you have some extra cash lying around, contracting an experimental app is awesome.<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">Engineers Too<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">There are plenty of programmers whose job roles do not require them to think about product design.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I spent three years engineering backend Java systems, and there was rarely an interesting decision to be made about the end user\u2019s experience with the product itself. It was all about implementation. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">You can spend a whole career like this, never grappling with problems higher up the stack. If you are planning to do that, then you will make a lot of money&#8211;why not spend $5k of it delegating an app to a contractor?<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">You might find out that you love product design and development even more than backend engineering.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I\u2019ve been thinking about contracting an app ever since I heard the story of Uber\u2019s prototype. More recently, <a href=\"http:\/\/softwareengineeringdaily.com\/2015\/11\/18\/software-and-entrepreneurship-with-seth-godin\/\"><span class=\"s3\">when Seth Godin came on this podcast<\/span><\/a>, I asked him about the engineering challenges of building Squidoo, the second company he sold. As it turns out, the minimum viable product for Squidoo was <i>also<\/i> written by a contractor.<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3016\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-5\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?fit=399%2C348&amp;ssl=1\" data-orig-size=\"399,348\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-5\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?fit=300%2C262&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?fit=399%2C348&amp;ssl=1\" class=\"aligncenter wp-image-3016 size-full\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?resize=399%2C348\" alt=\"untitled-5\" width=\"399\" height=\"348\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?w=399&amp;ssl=1 399w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-5.png?resize=300%2C262&amp;ssl=1 300w\" sizes=\"(max-width: 399px) 100vw, 399px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\">My biggest takeaways from that brief discussion with Seth: <b>have your deliverables as well-defined as possible<\/b> and you won\u2019t have to iterate in order to get the product out the door as you imagined it in your head.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">The Uber and Squidoo examples are interesting because Kalanick and Godin both studied computer science, but <i>they still opted not to write their apps<\/i>. They decided the work would be done faster and more effectively if they delegated.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">As an engineer, I have been building janky minimum viable products for the last five years because I assumed that was the way it had to be done. Each time I designed and built an app, the end result was unimpressive. Because I wasn\u2019t focused entirely on the product design OR the engineering, I did a poor job trying to do both.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">This is one of the most common fallacies that keeps programmers in a position where they have to take orders. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">The programmer is conditioned to believe that delegating something means admitting that you are incapable of doing it. Programmers are taught that it is more valiant to spend hours reading documentation and doing something on your own than to delegate your work to someone who won\u2019t have to read as much documentation, and will do it faster and more cleanly.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">After hearing about several stories of contracted products that turned into successful companies, I decided to experiment with the contracting process myself. I would focus on product design and hire a contractor to write the software.<\/span><\/p>\n<h2 class=\"p6\"><span class=\"s1\">Ideation and Prototyping<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">When we think of product designers, we often think of a bolt of inspiration coming to an inscrutable genius like Jack Dorsey or Steve Jobs or Elon Musk.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">The reality is that effective product design can be learned by anyone who is willing to put in the hours, study the craft, and iterate. From Airbnb to Facebook to the wide range of products on IndieHackers.com&#8211;successful products come from people are constantly experimenting and toying around with new ideas.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">A product designer lives and breathes research and development. The effective product designer is constantly studying the world and running experiments in her own life. She crafts her environment to be conducive to new ideas, and keeps her calendar peppered with blank space where she can reflect and let new ideas come to the surface of her consciousness. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I keep whiteboards around my apartment to write down product ideas and other fleeting moments of inspiration. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Back in college, I was on a diet of homemade Soylent and I was having awful fever dreams due to related indigestion. I had misread the recipe for Soylent that I found online, and had accidentally put three times the amount of fiber in my mixture as the recipe called for.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I woke up at 2 AM from these Soylent induced fever dreams. I have heard that people often think up their best ideas when they wake up at 2 AM, because the boundary between your consciousness and your unconsciousness retreats a little bit. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">In this case, I was struck by an idea for a user-generated advertising platform, where companies would offer contests where people could compete to make the best ads. I sketched it on one of my whiteboards and went back to sleep for a few fitful hours.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">When I woke up, I copied the idea from my whiteboard to a spiral notebook, and then forgot about it.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Years later, I was working at an advertising technology company, and I started to see some of the inefficiencies in the advertising industry. I realized that my idea from back in college might actually have merit. I started building a prototype called Banner Warhol, and I completed it in a few weeks. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Along the way, I seeded it with some fake ads I made (thanks to Michael Rosenthal and Josh Stewart for helping with the design).<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3015\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-6\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?fit=468%2C507&amp;ssl=1\" data-orig-size=\"468,507\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-6\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?fit=277%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?fit=468%2C507&amp;ssl=1\" class=\"aligncenter wp-image-3015 size-full\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?resize=468%2C507\" alt=\"untitled-6\" width=\"468\" height=\"507\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?w=468&amp;ssl=1 468w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-6.png?resize=277%2C300&amp;ssl=1 277w\" sizes=\"(max-width: 468px) 100vw, 468px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\">This was a decent idea, but fraught with mistaken execution:<\/span><\/p>\n<ul>\n<li class=\"li4\"><span class=\"s1\">There was no concrete hypothesis; once I launched, how would I define success and failure?<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">There was no target user base&#8211;how would I get distribution?<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">Who cares about banner ads?<\/span><\/li>\n<\/ul>\n<p class=\"p4\"><span class=\"s1\">I didn\u2019t know what I was building or why. I had a vague sense that user-generated advertising could be cool, and I started hacking on the idea without thinking further.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I have no professional experience writing front-end apps, and it shows with Banner Warhol. Consequently, the code base quickly became a disaster. I got sick of the project, and I quit: the classic abandoned side project.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">As I said above, in this case <b>the engineering was a distraction from thinking about the product<\/b>. I was afraid to think too deeply about the product I wanted to build because I was afraid I wouldn\u2019t be able to engineer it.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><b>If you are trying to play both product designer and engineer, there can be inherent cognitive dissonance.<\/b><\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I abandoned the idea for a year and a half, going to work at Amazon and then focusing on building this podcast. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">But&#8211;the idea of user-generated advertising has stuck with me, and when I read futurist Kevin Kelly talking about it in his recent book <a href=\"https:\/\/www.amazon.com\/Inevitable-Understanding-Technological-Forces-Future\/dp\/0525428089\"><span class=\"s3\">The Inevitable<\/span><\/a> I knew there was something yet unexplored:<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><i>\u201cWith a peer-to-peer system, these ads would be created by passionate (and greedy) users and unleashed virally into the blog wilds, where the best ads would evolve by testing and redesign until they were effective.\u201d<\/i><\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">If you replace the word \u201cblog\u201d, with \u201csocial networking\u201d, the idea for peer-to-peer advertising becomes quite compelling. Social networks are where advertising is most effective today&#8211;so the question became, how can you build user-generated advertising into the social network ecosystem?<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3014\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-7\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?fit=288%2C354&amp;ssl=1\" data-orig-size=\"288,354\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-7\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?fit=244%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?fit=288%2C354&amp;ssl=1\" class=\"aligncenter wp-image-3014 size-medium\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?resize=244%2C300\" alt=\"untitled-7\" width=\"244\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?resize=244%2C300&amp;ssl=1 244w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-7.png?w=288&amp;ssl=1 288w\" sizes=\"(max-width: 244px) 100vw, 244px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s3\"><a href=\"http:\/\/www.adweek.com\/news\/technology\/taco-bells-cinco-de-mayo-snapchat-lens-was-viewed-224-million-times-171390\">Snapchat has added features around user-generated advertising<\/a><\/span><span class=\"s1\"> and <a href=\"http:\/\/themobilemedialab.com\/\"><span class=\"s3\">Instagram models make deals with advertisers<\/span><\/a>. These ideas scratch the surface&#8211;but user-generated advertising is not just a feature, or an idea that you patent. It is an entire medium of expression. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">We need an entire platform for making ads.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">People should be able to make advertisements for products, ideas, and movements. They should be able to see each other\u2019s advertisements, to Like and Comment on them, and connect with brands who want to use those advertisements. This would lower the cost to the brands who currently work with overpriced agencies to make their ad campaigns.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Armed with this hypothesis, I thought about the minimal way to run an experiment.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Who is a user base that is most likely to latch on to a product that lets you make ads? <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I was thinking about this question when I was scrolling through Instagram and saw a cache of people who are making their own ads already&#8211;Instagram fitness instructors and models. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Many of these people are trying to build a personal brand, and in doing so they advertise for products like protein shakes, meal plans, and fitness programs. They may have 2000-5000 followers, which is respectable but not highly monetizable. Most big brands will not do business with this type of person.<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3013\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-8\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?fit=468%2C312&amp;ssl=1\" data-orig-size=\"468,312\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-8\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?fit=300%2C200&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?fit=468%2C312&amp;ssl=1\" class=\"size-medium wp-image-3013 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?resize=300%2C200\" alt=\"untitled-8\" width=\"300\" height=\"200\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?resize=286%2C192&amp;ssl=1 286w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-8.png?w=468&amp;ssl=1 468w\" sizes=\"(max-width: 300px) 100vw, 300px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\">Nonetheless, they are \u201cinfluencer marketers\u201d. This mid-level amount of \u201cinfluence\u201d is going largely uncaptured. It is like blogging before Google AdSense.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">From Instagram to Vine to YouTube to Facebook, there exists the challenge of connecting influencers to brands they should be representing, but on Instagram this problem seemed most acute.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">My idea for a workflow was:<\/span><\/p>\n<ol class=\"ol1\">\n<li class=\"li4\"><span class=\"s1\">User takes a picture or video<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">User attaches a brand to the media, turning it into an advertisement<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">User posts the advertisement to Instagram<\/span><\/li>\n<\/ol>\n<p class=\"p4\"><span class=\"s1\">It would have the familiar mechanics of a photo sharing app so that people felt like they were using something they had used before.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3012\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-9\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-9.png?fit=167%2C291&amp;ssl=1\" data-orig-size=\"167,291\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-9\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-9.png?fit=167%2C291&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-9.png?fit=167%2C291&amp;ssl=1\" class=\"size-full wp-image-3012 alignleft\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-9.png?resize=167%2C291\" alt=\"untitled-9\" width=\"167\" height=\"291\" data-recalc-dims=\"1\" \/>I took out a notebook and started drawing diagrammatic ideas. When I had the idea fleshed out on paper, I moved to Sketch, a Mac OS tool that is like Photoshop. Stitching together pictures from Google Images, I made the design as crisp as I could. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I had no prior experience with Sketch. It is an awesome piece of software and is more intuitive than I expected.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">After creating screenshots for the workflows I wanted, I put together <a href=\"https:\/\/projects.invisionapp.com\/share\/PJ7L34OYF%23\/screens\/165342605\"><span class=\"s3\">an Invision<\/span><\/a><\/span> <span class=\"s1\">to further describe the functionality of the app. Invision is a fantastic product for communicating UX and design.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I like Invision because it is easy to share your prototype. At Apple, product designers use Keynote to create prototypes that feel like apps, so that is a viable choice as well.<\/span><\/p>\n<p class=\"p4\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3010\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-11\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?fit=468%2C146&amp;ssl=1\" data-orig-size=\"468,146\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-11\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?fit=300%2C94&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?fit=468%2C146&amp;ssl=1\" class=\"aligncenter wp-image-3010 \" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?resize=510%2C159\" alt=\"untitled-11\" width=\"510\" height=\"159\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?w=468&amp;ssl=1 468w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-11.png?resize=300%2C94&amp;ssl=1 300w\" sizes=\"(max-width: 510px) 100vw, 510px\" data-recalc-dims=\"1\" \/><\/p>\n<p class=\"p4\"><span class=\"s1\">When I finished the prototype, I wanted to get it into the hands of users. But, I was working on Software Engineering Daily full-time. I already had a lot on my<img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3011\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-10\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-10.png?fit=166%2C286&amp;ssl=1\" data-orig-size=\"166,286\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-10\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-10.png?fit=166%2C286&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-10.png?fit=166%2C286&amp;ssl=1\" class=\"size-full wp-image-3011 alignright\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-10.png?resize=166%2C286\" alt=\"untitled-10\" width=\"166\" height=\"286\" data-recalc-dims=\"1\" \/>plate, so it was important that I used my spare time efficiently.<\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">For a few weeks, I tried to learn modern iPhone programming. My pace of learning was so slow and I was not motivated by learning the syntax and the design patterns of mobile development. Thinking back to how Uber and Squidoo were made, I decided to contract my advertising platform&#8211;which I was then calling \u201cAdstagram\u201d.<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">Contracting<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">I logged onto Upwork and searched for iOS developers with experience on photo sharing apps, quickly finding someone who was <a href=\"https:\/\/support.upwork.com\/hc\/en-us\/articles\/211063568-How-do-freelancers-become-Top-Rated-\"><span class=\"s3\">top rated<\/span><\/a> and worked for $66\/hour. I asked him for a demonstration of his work and he showed me a photo sharing app he had built in the past, which he could reuse some of his code from.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I sent him the prototype and asked him for a quote as well as a description for how he would build the app. His price was reasonable and the architecture he proposed was simple, so we got started with a first, simple set of milestones to hit.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">As a software engineer, it was easier for me to evaluate that his estimations of time and cost were reasonable. If you are not an engineer, you can check with an engineer friend to see if what a contractor is offering you is fair.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Upwork creates an escrow transaction for each set of milestones you define. I defined milestones in terms of high-level functionality and capabilities that were a subcomponent of that functionality. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">For example, the following list of user story functionality requirements could make up a milestone:<\/span><\/p>\n<ol class=\"ol1\">\n<li class=\"li4\"><span class=\"s1\"><b>Taking and editing a picture\/video, or uploading from library<\/b><\/span>\n<ol class=\"ol2\">\n<li class=\"li4\"><span class=\"s1\">I can take a photo or select one from my library<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">I can shoot a video using different segments, like Vine\/Instagram<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">I can use brand search with autocomplete to select a brand for my picture\/video and it will add a logo<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">I can move the logo to different locations in the picture<\/span><\/li>\n<\/ol>\n<\/li>\n<li class=\"li4\"><span class=\"s1\"><b> Sharing the photo<\/b><\/span>\n<ol class=\"ol2\">\n<li class=\"li4\"><span class=\"s1\">I can share a photo in my Adstagram feed<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">I can share the photo to Instagram<\/span><\/li>\n<li class=\"li4\"><span class=\"s1\">I can share the photo to Facebook and Twitter<\/span><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p class=\"p4\"><span class=\"s1\">Each milestone was a small amount of money, and gave me a feel for the pace at which the contractor worked, and helped me predict what the final budget might be. After each milestone, he sent me a working version of the application thus far.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">I was testing the app after each milestone, and this put me in the shoes of the user. During testing I identified an issue with an image search feature within the app. I made a flow chart in Gliffy to be clear about how I thought it should work.<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3009\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/untitled-12\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?fit=365%2C373&amp;ssl=1\" data-orig-size=\"365,373\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"untitled-12\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?fit=294%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?fit=365%2C373&amp;ssl=1\" class=\"size-medium wp-image-3009 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?resize=294%2C300\" alt=\"untitled-12\" width=\"294\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?resize=294%2C300&amp;ssl=1 294w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled-12.png?w=365&amp;ssl=1 365w\" sizes=\"(max-width: 294px) 100vw, 294px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p class=\"p4\"><span class=\"s1\">Four months after initially contracting the app, the functionality is complete and the price tag is under budget&#8211;it took $3100 to build, and I gave the contractor a $400 bonus for doing a great job and being responsive. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">You can now download Adforprize in the iOS app store. I use the app on a regular basis, and I\u2019m looking forward to seeing how people respond to it. <\/span><\/p>\n<p class=\"p1\"><span class=\"s1\">If you have an iPhone, I would love if you checked it out, and if you like it then rate the app on the app store. I didn\u2019t ask for ratings on the iTunes store very often for this podcast&#8211;because I\u2019m not convinced ratings matter that much for podcasts. But they <i>definitely<\/i> matter for apps.<\/span><\/p>\n<h2 class=\"p5\"><span class=\"s1\">Epilogue<\/span><\/h2>\n<p class=\"p4\"><span class=\"s1\">For many people, the most coveted job in tech right now is \u201cproduct\u201d, whether that means product design, product engineering, or both. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3023\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/taylor_swift\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?fit=255%2C454&amp;ssl=1\" data-orig-size=\"255,454\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"taylor_swift\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?fit=169%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?fit=255%2C454&amp;ssl=1\" class=\"size-medium wp-image-3023 alignleft\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?resize=169%2C300\" alt=\"taylor_swift\" width=\"169\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?resize=169%2C300&amp;ssl=1 169w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/taylor_swift.png?w=255&amp;ssl=1 255w\" sizes=\"(max-width: 169px) 100vw, 169px\" data-recalc-dims=\"1\" \/>We dream about drawing something on a whiteboard in a conference room during a meeting, and then seeing a finished product come across our desk a week later, so we can evaluate it, critique it, and send it back for another iteration. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">How do those whiteboarding product phenoms get such an awesome job? By practicing and getting good. Why else would anyone talented follow their lead? One way or another, these \u201cproduct\u201d people have accrued experience and are rewarded with responsibility.<\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">Adforprize has gone from being Soylent-induced nightmare idea to a reality that you can download from the app store. Now begins the long, cyclical slog of getting people to try it out, realizing that numerous UX issues make it confusing and terrible, and paying a contractor for continued alterations. <\/span><\/p>\n<p class=\"p4\"><span class=\"s1\">My hope is that the app gets some traction, and it will make sense to hire someone full time to work on it. If Adforprize falls completely flat, and nobody cares about it&#8211;that\u2019s OK too. I have had a ton of fun building it, and the education was worth twice the price. I\u2019m happy to pay the cost of tuition.<\/span><\/p>\n<p class=\"p4\"><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"3008\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/attachment\/13\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?fit=374%2C450&amp;ssl=1\" data-orig-size=\"374,450\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"13\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?fit=249%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?fit=374%2C450&amp;ssl=1\" class=\"size-medium wp-image-3008 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?resize=249%2C300\" alt=\"13\" width=\"249\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?resize=249%2C300&amp;ssl=1 249w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/13.png?w=374&amp;ssl=1 374w\" sizes=\"(max-width: 249px) 100vw, 249px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are multiple paths to constructing a piece of software from start to finish. An individual programmer can build an entire product from scratch in a couple days. A giant corporation can commission a project and delegate responsibilities to hundreds of people. An open source community can use the wisdom of the crowds to efficiently<\/p>\n","protected":false},"author":1,"featured_media":3007,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Adforprize: building an app without coding","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[1363,83,1085,14],"tags":[346,483,263],"class_list":["post-3006","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all-episodes","category-articles","category-hackers","category-podcast","tag-business","tag-editorial","tag-philosophy"],"jetpack_publicize_connections":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Adforprize - Software Engineering Daily<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Adforprize - Software Engineering Daily\" \/>\n<meta property=\"og:description\" content=\"There are multiple paths to constructing a piece of software from start to finish. An individual programmer can build an entire product from scratch in a couple days. A giant corporation can commission a project and delegate responsibilities to hundreds of people. An open source community can use the wisdom of the crowds to efficiently\" \/>\n<meta property=\"og:url\" content=\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\" \/>\n<meta property=\"og:site_name\" content=\"Software Engineering Daily\" \/>\n<meta property=\"article:published_time\" content=\"2016-12-03T10:00:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-05T11:43:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311\" \/>\n\t<meta property=\"og:image:width\" content=\"468\" \/>\n\t<meta property=\"og:image:height\" content=\"311\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jeff\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@software_daily\" \/>\n<meta name=\"twitter:site\" content=\"@software_daily\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeff\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"20 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#article\",\"isPartOf\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\"},\"author\":{\"name\":\"Jeff\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd\"},\"headline\":\"Adforprize\",\"datePublished\":\"2016-12-03T10:00:35+00:00\",\"dateModified\":\"2021-11-05T11:43:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\"},\"wordCount\":4028,\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"image\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1\",\"keywords\":[\"Business\",\"Editorial\",\"Philosophy\"],\"articleSection\":[\"All Content\",\"Exclusive Articles\",\"Hackers\",\"Podcast\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\",\"url\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\",\"name\":\"Adforprize - Software Engineering Daily\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage\"},\"image\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1\",\"datePublished\":\"2016-12-03T10:00:35+00:00\",\"dateModified\":\"2021-11-05T11:43:06+00:00\",\"breadcrumb\":{\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1\",\"width\":468,\"height\":311},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/softwareengineeringdaily.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Adforprize\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"name\":\"Software Engineering Daily\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\",\"name\":\"Software Engineering Daily\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1\",\"width\":549,\"height\":169,\"caption\":\"Software Engineering Daily\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/software_daily\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd\",\"name\":\"Jeff\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg\",\"caption\":\"Jeff\"},\"url\":\"https:\/\/softwareengineeringdaily.com\/author\/jeff\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Adforprize - Software Engineering Daily","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/","og_locale":"en_US","og_type":"article","og_title":"Adforprize - Software Engineering Daily","og_description":"There are multiple paths to constructing a piece of software from start to finish. An individual programmer can build an entire product from scratch in a couple days. A giant corporation can commission a project and delegate responsibilities to hundreds of people. An open source community can use the wisdom of the crowds to efficiently","og_url":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/","og_site_name":"Software Engineering Daily","article_published_time":"2016-12-03T10:00:35+00:00","article_modified_time":"2021-11-05T11:43:06+00:00","og_image":[{"width":468,"height":311,"url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311","type":"image\/png"}],"author":"Jeff","twitter_card":"summary_large_image","twitter_creator":"@software_daily","twitter_site":"@software_daily","twitter_misc":{"Written by":"Jeff","Est. reading time":"20 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#article","isPartOf":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/"},"author":{"name":"Jeff","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd"},"headline":"Adforprize","datePublished":"2016-12-03T10:00:35+00:00","dateModified":"2021-11-05T11:43:06+00:00","mainEntityOfPage":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/"},"wordCount":4028,"publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"image":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1","keywords":["Business","Editorial","Philosophy"],"articleSection":["All Content","Exclusive Articles","Hackers","Podcast"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/","url":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/","name":"Adforprize - Software Engineering Daily","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/#website"},"primaryImageOfPage":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage"},"image":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1","datePublished":"2016-12-03T10:00:35+00:00","dateModified":"2021-11-05T11:43:06+00:00","breadcrumb":{"@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#primaryimage","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1","width":468,"height":311},{"@type":"BreadcrumbList","@id":"http:\/\/softwareengineeringdaily.com\/2016\/12\/03\/adforprize\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/softwareengineeringdaily.com\/"},{"@type":"ListItem","position":2,"name":"Adforprize"}]},{"@type":"WebSite","@id":"https:\/\/softwareengineeringdaily.com\/#website","url":"https:\/\/softwareengineeringdaily.com\/","name":"Software Engineering Daily","description":"","publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/softwareengineeringdaily.com\/#organization","name":"Software Engineering Daily","url":"https:\/\/softwareengineeringdaily.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1","width":549,"height":169,"caption":"Software Engineering Daily"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/software_daily"]},{"@type":"Person","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/6365c4c1ff0b8cf742afe4279ddcc5bd","name":"Jeff","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/69ae5c01bd43f01c2564f8f85218a6b6?s=96&d=retro&r=pg","caption":"Jeff"},"url":"https:\/\/softwareengineeringdaily.com\/author\/jeff\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2016\/12\/Untitled.png?fit=468%2C311&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p7GuoD-Mu","_links":{"self":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/3006"}],"collection":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/comments?post=3006"}],"version-history":[{"count":0,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/3006\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media\/3007"}],"wp:attachment":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media?parent=3006"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/categories?post=3006"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/tags?post=3006"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}