Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Business

huckleberry
huckleberry
14,636 Points

Course for Developing and Marketing a Program... as in an Actual Desktop Program from Start to Finish. AKA.. HELP!

Hello Content Creators, Devs and general student body...

I would like to either

  1. Request a course that teaches the development PROCESS of a program that would be brought to market from start to finish. What I mean is not the actual "learn a language -> write a sample program -> etc..etc.." but rather the finer points of "once your program is written, this is what you need to do to make it market ready". And not for mobile either, where there's all sorts of defined steps for each platform and a ready and waiting app store that you don't have to think about, just upload. Anyway, I'll explain further after point #2

  2. Be pointed in the right direction if there IS a course within the business series or elsewhere on the site that cover what I'm about to explain/ask. Even if there are concise external resources that cover exactly what I need right now, that would be fantastic if you could point me there as well.

Backstory:

Early last year I got fed up with a problem -- or rather an annoyance -- that I was having executing certain tasks involving another program that I use for my main job. I set out to figure out a solution and wound up learning how to code a script that would handle what I needed. As time went on I realized there were more things that I could do and the script grew. Eventually it turned into this big awesome thing and I loved it.

I then learned that I could compile it and *bam!* now I could send it to others that I knew that also used the same software I was using because I knew it would help them.

Well, everyone flipped their lids and was just thrilled because now all of these ridiculously repetitive and necessary daily tasks had been simplified down to a couple of keys. Awesome. And one of the more savy fellas contacted me and was like "Uh, why aren't you selling this? There's like 2 million people out there using the software you wrote this for dude..."

Answer: It just never occurred to me because I just really didn't know anything about that. But now that you mention it, wow... yeah, I'm gonna do that.

Commence "Operation Unrealistic Expectations": Formerly "Operation A Bajillion Dollars"

So, I got to tweaking the program as there were still a few bugs that I hadn't worked out because they weren't much of a bother to me at the time and hadn't been worth the time it would take to figure out the fix, but I also knew I couldn't sell it like that. Then I started implementing a couple of new things that I had wanted to and the ideas started coming.

I put a lot of them on the back burner for now -- future releases and all -- but I was left with a pretty solid piece of software that I know everyone that is within my industry and uses the software I use would still kill for.

Now to get folks to test it...

I have enough friends that use the software that I could at least get some decent early feedback from so I sent it out to about a dozen or so folks and the response was very positive but there were some snags I hadn't thought about or knew would happen and this is where I'm left now because I've looked into the fixes for it but I'm more confused now than I was before.

Brick Wall

"Well, what are those problems?" asked no one.

I'll tell you... and these are the things that I'm talking about that I would like to see covered in a course.

  1. Getting folks to successfully beta test is becoming an issue because browser security measures and windows security itself goes all nutty because it's like "wth is this??" and starts throwing warnings and in some instances will refuse to allow it to be run. I know from my initial researching into it that in order to rectify this I have to include a key or digital signature (publisher signature or whatever the real term is) but... that's where I fall short. Reading the various articles out there or the threads on StackOverflow, sitepoint and other places leave me more confused as to what needs to be done than I was before... speaking of confusing..

  2. I want to protect it as much as possible and while I know piracy is inevitable I still need to do my best and that involves implementing a license key and if you thought I was confused about including a publisher key in my source well then compound that confusion sideways8. I try to read up about it and even in threads where someone is stating "I have no idea what I'm doing, please explain license keys and how do I do one?" everyone talks l like the OP's mother's womb was MIT and they came out wrapped in a CS degree(I'm looking at you r/programming). I have no idea what steps to take

  3. Right now it's just an executable file... it's in a zip folder and once you calm your computer down into allowing it to download and be executed, it's still just that. An executable that you've dragged out of a zip folder. To me that's un-professional looking. It doesn't instill confidence and familiarity like your typical installer does but I'm not sure how that's done. I didn't know if that's supposed to be an entirely separate thing that YOU as the developer builds (in which case I was out of luck because that's way beyond my paygrade) or if there were applications that did that for you. After some quick searching I came across that very thing, but I was wondering if there was a best one or a preferred one. Etc...

  4. I'm not clear on the e-commerce side of things and don't really know where to go what to do and who to believe. On here there's some stuff regarding that but it's one option as far as I can tell (wordpress) and I've encountered some negative vibes out there about the WP commerce solution.

I dunno, I'm basically asking the course or anyone at this point to fill in the gaps here. Fortunately I had a brief stint running an online advertising division so that area of the whole process, once I get there, won't be much of a roadblock. But it's all the other things to get there...

So, this is all the stuff rolling around in my head right now...

  • Do I do the publisher/vendor license first within the source and then use one of those apps to *poof* it all into an installer?

  • How does the license key process go?

  • Are there services that sell software to add something to your program that makes it so you need to enter a license key? Like... is it some external thingy that you bundle with your software or is it some sstuff that goes in your source code?

  • Do I need to build something that verifies the license key when a customer enters the key into the software or is there some sort of software that I can purchase to do that? Or are there services that handle that?

  • What's the best way to go about the actual commerce side?

  • What am I setting up in the way of an e-commerdce site?

  • What services should I use? (I've read quite a bit of negativity about wordpress e-commerce sites having a lot of vulnerability).

  • Is it best to run through a CC processor and have my business account or is it best to handle everything through paypal? etc...etc...

I don't know...

<code>~</code>Fin<code>~</code>

So please, if this isn't a course already, make it. If these things ARE covered on a course on here, please point me in the direction. If you know of elsewhere that explains this stuff like they're talking to a regular person and not a CS genius, please point me there. If you've had experience with this or know about this stuff, please please post here. Maybe we can connect in some way, I dunno(I really wish they had PM's on here).

Anyway, thanks for taking the time to read if you've made it this far.

Cheers,

Huck - :sunglasses:

4 Answers

Ricky Catron
Ricky Catron
13,023 Points

I don't think this has been covered and now I am stuck with a giddy look on my face like a kid who got the best present they never knew they wanted. I feel like this would make an invaluable resource to the library......but I don't think this is the right time to add it. Right now Treehouse is focused on Web and mobile technology. They seem to be slowly adding Desktop programming but I think a full library of content like that is a ways off. I am not sure who would be the correct person to tag for this content is so I am just going to tag Faye Bridge and hope that's the right track.

Goodluck on an amazing idea! --Ricky

Ps. I am a big fan of free and open software plus if you have already given it away to so many people I don't know how you are going to begin charging. I would love if you put it up on GitHub instead of charging for it but that's just me I know you need to make a living as well.

huckleberry
huckleberry
14,636 Points

Heya Ricky Catron , Thanks for the reply and I'm glad there's at least some positive view on this. A giddy look even! haha.

I was getting worried. Usually 24hrs no reply is the death null :p:

but I don't think this is the right time to add it. Right now Treehouse is focused on Web and mobile technology.

To be honest bro, it seems to me, that this is the perfect time! I mean, with their current library, they don't need to cover much as far as I see it. There're what... 5 or 6 languages covered so far? Most of which can be compiled and run as stand alones, right? Even if you can't do what you want to do in those languages, once you've learned the core concepts, language transfer isn't much of a big deal and Treehouse I think does a pretty good job of teaching their students about resources and self-driven learning.

Really, think about it, they could start the course from the point of the software already being finished written. Code's done, now what?

*in Nick Pettit's voice for some reason*

"So you've learned a language, you've learned some design and now you've built an application that you want to bring to market... now what do you do? In this series we'll show and walk you through each of the steps that you need to take after a project has been developed. We'll cover testing and refactoring, we'll cover resources to get you the *right* kind of beta testers for your project. We'll also cover key details that are rarely talked about like assuring your code is safe and secure with verification through publisher signatures, protecting your software with a key generator and creating an installer for your new software. We'll even cover how to best create your documentation for the software and what kinds of things to think about. Towards the end, once you've got your shiny new software package ready we'll go over the final steps from "box" to client. Things like setting up an e-commerce site using 3 popular platforms so you can choose what best suits your needs. We'll show you how to set up payment processing and even go over how to handle your feedback and support needs that inevitably comes with releasing software. So click the start course button now and strap in for an enlighteningly entrepreneurial ride down the path of software release!"

But I think the key point of your statement is the 2nd sentence.

Right now Treehouse is focused on Web and mobile technology.

Yeah, you're absolutely 100% on the money, dude. And I do understand that, I promise I do, but the way I look at it is -- so is everyone... else.

Ya know why I jammed out such a ridiculous tome of personal information and backstory last night? It was mainly to keep me occupied so that I wouldn't break something.

NOBODY out there has this info in a walkthrough step by step manner. And even the guys that I know personally that have some knowledge about the industry and actually have tech degrees and careers seem to know NOTHING about this aspect. They simply don't deal with this and have never had to. And anywhere that does know about this stuff explains it in a complicated & ambiguous (at least to me) format.

So, you know, thinking about business model and all...

ahem ... ATTENTION TEAMTREEHOUSE. NO ONE IS OFFERING THIS. NOT YOU, NOT CODESCHOOL OR UDEMY OR UDACITY OR EVEN YOUDAMAN. NOT ANYWHERE I CAN FIND... GET ON THE BALL AND OFFER WHAT THE OTHERS AREN'T AND NOT SIMPLY JUST BETTER VERSIONS OF WHAT THEY ALREADY ARE...

Ryan Carson yeah you ... lol

You and Nick Pettit .

Ps. I am a big fan of free and open software plus if you have already given it away to so many people I don't know how you are going to begin charging. I would love if you put it up on GitHub instead of charging for it but that's just me I know you need to make a living as well.

How did I know someone was gonna mention this? lol

I was gonna ask how old you are but I realized that would sound ridiculously condescending and that's honestly not how I want to come off. Really. So if I seem a bit confrontational here, please just imagine we're two old buddies having a beer and I'm just really really frustrated. I'm not directing this AT you -- at all -- I'm just venting.

This idea of "Open and free" software is great and applicable to many things, but it's also not realistic as a 100% across the board standard. And yes, I know you know this. I'm not talking to you like a 5yr old here I promise lol.

I'm not employed by a big company that's paying me a six-figure salary or working on something that I can eventually use to get a job by saying "See, I did this... I'm awesome, please hire me." I know I mentioned that this software involves another application that I "use for my main job" but frankly that job is self driven and the money is hard to come by and frankly I've been sucking at it for a while and haven't made much of anything. But I love it so I will continue till I start to see a profit.

You can point to any number of different awesome open-source projects and innovations that have changed the landscape of the internet and technology and I could offer more that were not. People don't generally work for free and if they do they're benefiting in other ways either through user data, eventually selling the whole project to a company that wants to buy them out, through using their open projects for other means of income generation like gaining notoriety and job opportunities or whatever.

With that being said and maybe this is too much personal information but due to some bad personal choices right around the time of the financial crisis I wound up homeless for a bit, tens of thousands in debt and this is my 3rd winter with no heat. And I don't live in a nice climate either. I've watched several opportunities fly right by in the past couple of years because I didn't have any money to do anything about and have had to watch 2 pets die because I couldn't afford the care that they needed.

I've worked on this for a little over a year putting this together. Had to learn a language that isn't tutorial abundant in the way the more popular languages are and Now I have the opportunity to get myself on course, get myself out of a huge gaping hole, and offer something of value to a lot of people in the process. To suggest that I just give it away?... pffft... man.

And yeah, I know, you didn't know any of that and I'm sure you have the noblest of intentions of your belief in a landscape of free and open-source software but it's an unsustainable utopia. Is there a spot for it? Of course. To suggest otherwise would be ridiculous as history has shown that it's a huge part of the new world we live in. But to ignore that people have to get paid in some form, that people have to earn... is just naivete.

I mean, why stop at software? You pay for this service, right? Why doesn't Ryan just give this stuff away? It's educational and would only benefit the world, right? Well, no one's gonna create this content for free unless they're getting compensated and no one is gonna give Ryan the funding to pay the people to create said content unless they're gonna see a return. So why just software and not the treehouse content? Why pay for anything? What is this special class and category that software has somehow been lumped in to? Why is the years of effort, sweat, frustrations and discovery that goes into building and honing the skills it takes to create software applications any different than the years it takes to study, learn and build any skill or craft??

We have a whole course on business here, right? Would you suggest that there shouldn't be one because developers should just build websites for free? Designers should design logos and banners for free? Why not? I mean, if you think that's the case then my hands are up in the air because I just don't get the mindset and imo if you think software should just be open source and free then you should also have no problem just saying to your boss "Hey, don't worry about my paychecks from now on... it's all good. I believe in services being free."

With that being said ... lol

Look, I know you finished off that pragraph with "I know you have to make a living as well" so I do know you meant nothing by suggesting that you'd like to see me have it as a free application, that you don't honestly think everything should be free like my extremely hyperbolic previous paragraphs may have suggested and that you were simply expressing your views on the whole open source concept, so again, I reiterate, totally was not trying to be confrontational through all of that. Thinking back, I'm glad you brought it up. It allowed me to get some things off my chest and perhaps it'll open up a larger dialogue. Who knows?

But I did just want to clear one thing up, I didn't give it away to a ton of people or anything. If that was the impression I gave off initially then that's my bad and I apologize. Maybe you thought I gave it to like, thousands of contacts that I had acquired through industry events and stuff but when I said I have plenty of friends that use the software specific to the industry, I was talking like 20 people lol. 20 out of a couple million aint much of a hint of a speck of a scratch of the surface so, yeah, just wanted to throw that out there.

Anyway dude, thanks for the comment, I appreciate the feedback & your excitement over the prospect of the idea. And even though we're diametrically opposed on one side of the spectrum, I'm glad that there's at least one person out there that thinks the idea is worth exploring.

Cheers brother,

Huck - :sunglasses:

Ricky Catron
Ricky Catron
13,023 Points

Great post!

Death null made me laugh

I agree with you 100%. I will agree I am on the young end of the spectrum and that definitely plays a part in my view on opensource technology. I would like to point out a few things however, selling a product is not the only way to make money off it: advertising or sponsors is another way. Maybe the course you want could go over others. I hope Treehouse will get into this field asap but I don't think its possible for them right now. They simply don't have the staff in those areas. I know they are looking for a C# teacher so they are moving into it but it will take time.

I am sorry you have gone through such hardship. I completely understand your need to monetize your creation and I wish you the best of luck. If there is anyway I can help please let me know. Several Staff members have been tagged and I hope they can respond on Monday.

Goodluck! --Ricky

huckleberry
huckleberry
14,636 Points

Great post!

Death null made me laugh

Hehe, ty.

I must say... thoroughly impressed with your reply. Thanks for being patient and understanding with an obviously frustrated post(lol) as well as offering up some good feedback and suggestions.

I agree with you 100%. I will agree I am on the young end of the spectrum and that definitely plays a part in my view on opensource technology. I would like to point out a few things however, selling a product is not the only way to make money off it: advertising or sponsors is another way. Maybe the course you want could go over others. I hope Treehouse will get into this field asap but I don't think its possible for them right now. They simply don't have the staff in those areas. I know they are looking for a C# teacher so they are moving into it but it will take time.

That's an interesting point that you bring up about alternative revenue streams and I hadn't even considered that. Having considered them now though, while I don't know much about them(implementation) I don't think they'd be well received within the particular industry and with this particular product though as I know I've absolutely hated the influx of said "additions" to free software. I'd rather just pay for it to be quite honest and there's many free programs that I do use that I would pay for if they decided to monetize but wouldn't use if it was an ad based revenue stream. I know I know... someone that used to work in advertising hates ads? Yes hahaha.

BUT... you're right, there are other potential models and even though I'd prefer to go the good ol' fashioned 'Buy it' model, I agree that this very topic would be a good inclusion to the proposed course and considering the current landscape, excluding it might very well leave a detrimental gap.

Not quite as detrimental as the course not-existing right now though ;) hehe... yeah I'm gonna keep harping.

I am sorry you have gone through such hardship. I completely understand your need to monetize your creation and I wish you the best of luck. If there is anyway I can help please let me know. Several Staff members have been tagged and I hope they can respond on Monday.

Goodluck! --Ricky

Thank you, I appreciate that. I hope your best wishes prove fruitful and If I can think of anything you bet ya I'll be posting.

Small update though since you seem to be genuinely interested:

I did find out some answers regarding the issues that led to my request for this course.

I found a good program that will create an installer. They have a free version but also a pro-version at a reasonable price. I tried out the free-one to get a feel for it and it was actually rather simple but there are some additional options on the pro-version -- as well as not having "free version" stamp on the created installer lol -- that I would really want.

I've also wound up finding my way to some decent resources about code-signing ... all I have to do now is put a little money aside for it. But when the time comes they're reasonably priced and not wallet-purging like say, the symantec verisign thingy.

The next step is to now finish the software as I've just in the past couple of days learned how to program some additional features that while they aren't 100% necessary will make a huge difference for the user but I simply didn't know how to do it yet.

I'm thinking I will release an early version and have those new features as relatively quick update of about a month or two. Would love to get your opinion on that. Is it better to wait and implement or, if you have a solid product without the additional features, better to get to market with something first and then you can release the new features as your first update. I'm not entirely sure on this.

It might be better to wait though as to be honest, I have no online presence and now that I'm looking at the business courses, I think it would be best to first take some time to establish a blog and some social presence within the industry (no matter how small) that I can then use to capitalize on rather than just trying to put the software on the market and rely on WoM and ad networks & affiliates.

Thoughts?

Thanks again bro, it's been a great engaging you on the topic and thinking about these things.

Cheers!

Huck - :sunglasses:

Ricky Catron
Ricky Catron
13,023 Points

I would keep the release until you had the software (Version 1) finished. No one wants to play with buggy software and they might never come back. I am glad you found the resources you need! Could you post them here for other students to use? In addition you might want to make one of your blog posts about it! Do a full tutorial like the one you hope Treehouse produces. I am glad my ideas on alternative revenue sparked some interest. I didn't think ads would be the way to go either but it was the first thing I could think of. This has been one of the most enjoyable discussions I have had on here to be honest.

Goodluck! --Ricky

huckleberry
huckleberry
14,636 Points

I would keep the release until you had the software (Version 1) finished. No one wants to play with buggy software and they might never come back.

I was thinking the same, at least with some features.

Just to be clear though I didn't mean features that were buggy or incomplete, I just meant that I had additional features that either popped into my head or had been in my head but I didn't know how to implement them and just recently learned how.

So the stuff I had actually works flawlessy at the moment. It was just "Ok, should I delay the release to add these additional features NOW, or release the product, which is totally fine right now and not lacking in a particular core functionality, let it get some buzz going and build a customer base and then release the additional stuff as an update. Which would actually give me the opportunity to tout its release and new "coming soon" features via blogging and social stuffs"

Completed Product
  |
  |_ Feature 1
  |
  |_ Feature 2
  |
  |_ Feature 3
  |
  |_ Feature 4
  |
  |_ Feature 5

Whereas the stuff that I had thought of or learned how to do would now make it more like

Completed Product
  |
  |_ Feature 1
  |
  |_ Feature 2
  |
  |_ Feature 3
    |
    |3a, 3b
  |
  |_ Feature 4
  |
  |_ Feature 5
  |
  |_ Feature 6
  |
  |_ Feature 7

Where 5 - 6 aren't needed but would be nice to have and 3a 3b are just added perks to a fully-functional-on-its-own feature (please tell me if there's an industry term for that lol)

But in thinking more about it, one of the features allows the user to customize a previously static setting -- which is a big improvement. However, without the customization it's still a fantastic feature with great functionality.

I dunno, I have to think but I'll take your thoughts under consideration no doubt.

I am glad you found the resources you need! Could you post them here for other students to use? In addition you might want to make one of your blog posts about it! Do a full tutorial like the one you hope Treehouse produces.

Absolutely I'll post them. I will post them later this evening as I have to get out of here for a lunch meeting with some possible backers (excited) but I was thinking about actually making a stand alone post instead of deep within this single comment thread lol.

As to the blog post you mentioned, that's actually something I haven't had but in the past week as a result of this ongoing discussion and doing more rigorous research on all aspects of this I have decided to hold off a bit longer on the release for the express purpose of creating a presence online within the community that exists for the industry I'm talkin' bout here. I have never done that and to be honest I don't even have FB or twitter or any of that silliness but I guess I have to now.

I've switched over from the WD track to the learn WP track so I can get the ball rolling. I do already have a site that I registered last year and had started tinkering with but it's just a couple of broken pages right now because I never got around to fully tweaking it and I hated everything I did because I was moving ever so slowly through the WD track and my design chops are frankly non-existent. So, seeing as how time is of the essence and my time is better spent right now on the business side, I decided to just stop being stubborn and insisting to myself that I must learn and build it from the ground up, and just go with out of the box highly customizeable and functional software for site building and implementation. And the e-commerce thing.

so WP and Shopify plugin it is!

I will eventually resume the WD and front-end course and move on to PHP but for now... priorities.

To that end though, I registered another site that will strictly be for web design/development projects and portfolio. The other industry is not web-design or programming so up until now any work I was doing on this stuff here, I was also hosting on the site I originally intended to be my main blog which, just became messy and convoluted if you ask me.

The new site will be to catalog my journey here and in development in general, providing me a place to tinker with projects, practice skills and and display my work. And yes, that will be a blog setup and I'll be building that as my Learn WP Track project as we go through the lessons.

So I WILL make a blog post about this topic... covering what I've learned and what new devs at this point should know and I'll definitely link it here when it's up and ready.

However I promise to make a separate post here on the TH forums well before that point.

I am glad my ideas on alternative revenue sparked some interest. I didn't think ads would be the way to go either but it was the first thing I could think of. This has been one of the most enjoyable discussions I have had on here to be honest.

Goodluck! --Ricky

Yeah well at least you're thinking and offering suggestions. I'm amazed that not a single other person has saw fit to chime in. *sigh*. But I concur, it's been rather enjoyable and has helped me to work through several things and completely rethink and rework others, so a big thanks to you for engaging and thanks for that luck!

Cheers,

Huck - :sunglasses:

Ricky Catron
Ricky Catron
13,023 Points

I have learned a ton from this conversation thank you for that. I am glad you will be sharing your find with everyone else and I hope someone decides to tackle this class idea. I like your idea of switching over to WordPress to make use of its amazing eCommerce plugins. I also have noo design chops. I mainly do back-end development in PHP or Python. I think you re on the right track and I can not wait to see what you accomplish!

Goodluck! --Ricky

Student needs and interests should guide how Treehouse develops courses!

Email help@teamtreehouse.com with the subject line "Content Suggestion"

They review all emails and make note each month of what students are wanting to see. This helps shape their decisions about content and features in the near future!

(from http://teamtreehouse.com/support)

Ricky Catron
Ricky Catron
13,023 Points

Thanks for commenting Raphael Reiter I had not thought about this post in a long time. huckleberry are you a mod now? Congrats! How is that business going?

--Ricky