Open Side Menu Go to the Top
Register
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** ** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

08-26-2013 , 08:56 AM
dave, this in AHK?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-26-2013 , 02:10 PM
I guess you could have the installer send the hardware string before installation and get back a custom binary that is tied to the hardware string + that users authentication number. not that hard to implement badly, but you have some extra overhead when the binaries can't be cached, and you may be making your users' lives difficult.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-26-2013 , 02:16 PM
I would say do the minimum to stop 90% of people cracking your software and definitely don't do anything to annoy your legit users. It's hard enough to get users to use native desktop apps, you don't want to make the barrier of entry even worse because someone is going to crack your app either way and put it on the internet if it's popular enough.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-26-2013 , 03:21 PM
Wow, now *i* agree with shoe. Armageddon countdown--
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-26-2013 , 04:04 PM
Quote:
Originally Posted by greg nice
dave, this in AHK?
Ideally yes, but I could use something else if need be.

Quote:
Originally Posted by Shoe Lace
I would say do the minimum to stop 90% of people cracking your software and definitely don't do anything to annoy your legit users. It's hard enough to get users to use native desktop apps, you don't want to make the barrier of entry even worse because someone is going to crack your app either way and put it on the internet if it's popular enough.
Yeah that's my thought too, but it's not an option - my task is to provide the "installer" for this, rather than me trying to protect some app of my own. I personally wouldn't bother with anything, or do something online. Perhaps go the custom-compile route above. Basically imagine the client is delivering a bunch of plain text files, and wants the equivalent of a password protected self-extracting zip as the delivery method - but unique to the "hardware id" of end user.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2013 , 10:52 AM
Quote:
Originally Posted by Shoe Lace
I would say do the minimum to stop 90% of people cracking your software and definitely don't do anything to annoy your legit users. It's hard enough to get users to use native desktop apps, you don't want to make the barrier of entry even worse because someone is going to crack your app either way and put it on the internet if it's popular enough.
All these mechanisms annoy me to no end because I run Windows in a VM...I think my Flopzilla key is not working right now (not playing poker seriously anymore so don't mind all that much) and I've bothered them at least twice before :P
I do like the way HEM does it where you basically have an account on their site and can get a key at any time.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2013 , 10:53 AM
ok so try this to get you started

basically it takes some secret passphrases, and md5 hashes them with the hardware id of the user. this becomes the license key. then in the installer we check that the same hash matches the key given. the key (hash) looks like its 32 chars long from md5. maybe you can trim that if you want, but i dont know if you will have collisions. the machine fingerprint is primitive as well and is trimmed to 16

this is not very secure because your secret passphrases must be stored within your 'installer' application so that the installer itself can perform the same hash to verify the license key. if someone hacks your installer and gets your passphrases and knows to use md5, then they can build a keygen

Code:
   secret_passphrase1 := "dave_is_the_man_123"
   secret_passphrase2 := "456_blah_789"

   Gui, Add, Text,, USE THIS TO GENERATE
   Gui, Add, Text, section, Users Hardware ID:
   Gui, Add, Button, gGenerateButton, Generate
   Gui, Add, Text,, Users Key:
   Gui, Add, Edit, ys w240 vHw_Id_To_Generate_For,
   Gui, Add, Text
   Gui, Add, Edit, w240 vGenerated_Key
   Gui, Add, Text, xs
   Gui, Add, Text,, TEST CLIENT SIDE ACCESS
   Gui, Add, Text, section, Your Hardware ID is:
   Gui, Add, Text,, Enter the Key given to you:
   Gui, Add, Button, gCheckButton, Check License Key
   Gui, Add, Edit, ys w240 vHw_Id_To_Check, % MachineFingerprint()
   Gui, Add, Edit, w240 vKey_To_Check,
   Gui, Show

return


GuiClose:
   ExitApp
return


GenerateButton:
   Gui, Submit, NoHide
   concatenated := secret_passphrase1 . Hw_Id_To_Generate_For . secret_passphrase2
   hash := AuthHash(concatenated, StrLen(concatenated), 3)
   GuiControl,, Generated_Key, %hash%
return


CheckButton:
   Gui, Submit, NoHide
   concatenated := secret_passphrase1 . Hw_Id_To_Check . secret_passphrase2
   hash := AuthHash(concatenated, StrLen(concatenated), 3)
   if (hash = Key_To_Check)
      MsgBox, key good! proceed with install
   else
      MsgBox, key bad   
return



AuthHash(ByRef sData, nLen, SID = 4) {  ; SID: 3 for MD5, 4 for SHA
  DllCall("advapi32\CryptAcquireContextA", "UintP", hProv, "Uint", 0, "Uint", 0, "Uint", 1, "Uint", 0xF0000000)
  DllCall("advapi32\CryptCreateHash", "Uint", hProv, "Uint", 0x8000|0|SID , "Uint", 0, "Uint", 0, "UintP", hHash)
  DllCall("advapi32\CryptHashData", "Uint", hHash, "Uint", &sData, "Uint", nLen, "Uint", 0)
  DllCall("advapi32\CryptGetHashParam", "Uint", hHash, "Uint", 2, "Uint", 0, "UintP", nSize, "Uint", 0)
  VarSetCapacity(HashVal, nSize, 0)
  DllCall("advapi32\CryptGetHashParam", "Uint", hHash, "Uint", 2, "Uint", &HashVal, "UintP", nSize, "Uint", 0)
  DllCall("advapi32\CryptDestroyHash", "Uint", hHash)
  DllCall("advapi32\CryptReleaseContext", "Uint", hProv, "Uint", 0)

  format = %A_FormatInteger%       ; save original integer format
  SetFormat, Integer, H
  Loop, %nSize% {
    nValue := *(&HashVal + A_Index - 1)
    StringReplace, nValue, nValue, 0x, % (nValue < 16 ? 0 :)
    sHash .= nValue
  }
  SetFormat Integer, %format%      ; restore original format

  Return sHash
}



MachineFingerprint() {

   EnvGet, COMPUTERNAME, COMPUTERNAME
   EnvGet, PROCESSOR_ARCHITECTURE, PROCESSOR_ARCHITECTURE
   EnvGet, PROCESSOR_REVISION, PROCESSOR_REVISION
   DriveGet, DRIVESERIAL, Serial, C:\
   
   PCdata := A_OSType . A_OSVersion . COMPUTERNAME
   PCdata .= PROCESSOR_ARCHITECTURE . PROCESSOR_REVISION . DRIVESERIAL
   
   fingerprint := AuthHash(PCdata, StrLen(PCdata))
   fingerprint := SubStr(fingerprint, 1, 16)
   return fingerprint
}

Last edited by greg nice; 08-27-2013 at 11:09 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2013 , 11:01 PM
Totally confirmed: salesfarce is terrible. I spent 45 minutes on the phone with the guy and almost everything I asked him was answered with a "no" or some monkey button-clicking (apparently they fear those click-once patents). It's hard to convince me, and especially the head of customer service, that the learning curve will be worth it, especially on those occasions they have to train a new person. It really is an unpleasant API to set up and work with, and overall quite disappointing. I expected much better than this for something that costs 5x what everyone else charges. Most importantly, they didn't have collision avoidance or email queuing, which just blew me away.

I then asked him about their so-called SQL, and he said, that is for hard-core programmers, you know the type who use javascript and deploy to Heroku. I almost wanted to put on my best Samuel L Jackson impression and say: "I write Lisp, mutha ****a!"

I'm pondering some other solutions. As I said, I refuse to roll my own, but I seriously doubt that there would be any other viable options here. There seems to be a few decent open-source email programs available. Add in some Thunderbird and SQLite and there may be something viable.

Thinking about suggesting this one: http://osticket.com/features.php, though there has to be a bit more research. Looks more powerful that sales force. dom by a decent spread.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2013 , 05:54 AM
Greg, that is awesome thank you!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2013 , 10:53 AM
no problem man, i basically learned AHK scripting from all of your contributions so i'm glad that i can return the favor
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 01:53 PM
So I'm going to start a small development shop. Basically, the idea is to find a group of people who want to do consulting, but with a couple of people around to help speed up the process/cover each other. It's a cross between working a 9-5 at a bigger shop, and trying to grind by yourself. So, if people wanted to work 25 hours a week on average, for probably a higher, and more transparent cut of the consulting fee, that'd be fine with me.

I have in the neighborhood of $2-300k at my disposal. There would be a focus on creative payment solutions/an angel investing component instead of just focusing on trying to bump my billing rate to larger companies.

Basically, I enjoy coding, but get bored on projects after a short while, and ideally wouldn't code for more than about 5 hours a day. I enjoy the business side of things, and enjoy building business relationships. I'm also much more motivated by a potentially bigger payoff down the road, and investing a lot of my own money is kind of a thrilling concept.

Any thoughts?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 02:01 PM
Make sure you have enough to eat if it doesn't work out.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 02:21 PM
200-300k? You can do 3+ self financed startups from that. Sounds much more thrilling to me. Invest 100% in yourself.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 02:53 PM
Quote:
Originally Posted by clowntable
200-300k? You can do 3+ self financed startups from that. Sounds much more thrilling to me. Invest 100% in yourself.
I'd probably pursue an idea if I had any. I mean, I think start ups tend to be more about execution than any one great idea, but I literally have none.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 03:02 PM
What technologies are you looking to use/ what do you enjoy making?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 03:33 PM
Quote:
Originally Posted by Larry Legend
What technologies are you looking to use/ what do you enjoy making?
I know ruby on rails quite well, and have been doing a lot of work with angularjs lately. It doesn't really matter to me what type of site I'm building because they all have interesting challenges.... I just need to believe in the idea at least a little bit.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 03:40 PM
Quote:
Originally Posted by Nchabazam
So I'm going to start a small development shop. Basically, the idea is to find a group of people who want to do consulting, but with a couple of people around to help speed up the process/cover each other. It's a cross between working a 9-5 at a bigger shop, and trying to grind by yourself. So, if people wanted to work 25 hours a week on average, for probably a higher, and more transparent cut of the consulting fee, that'd be fine with me.
I don't understand what you're trying to say here at all. Who's paying you, who are you paying and what is your company going to do to help these people?

Small consulting firms don't start in a vacuum when a guy is bored and wants to start a company - usually it starts when a freelancer/contractor who has at least one large paying client, sees far too much demand for his services and finds that he can meet this demand by hiring cheaper versions of himself and make extra money. Usually it's combined with unusual expertise or industry connections.


Quote:
I have in the neighborhood of $2-300k at my disposal.
This is good - what does your disposal mean though, this is your money or something you think you can raise from family, friends, etc?


Quote:
There would be a focus on creative payment solutions/an angel investing component instead of just focusing on trying to bump my billing rate to larger companies.
You need to stick to one or the other. You can't be doing too many things at once. Development, managing accounts and investing are for the most part unrelated activities and you're not going to make good decisions if you mix those without a clear direction. In any business there will be temptations to make bad decisions and having multiple unrelated goals means you can always justify any given decision on, well it can help with goal #27. Early-stage startups are also some of the worst clients for consulting firms if you want to make money.

Quote:
Basically, I enjoy coding, but get bored on projects after a short while, and ideally wouldn't code for more than about 5 hours a day.
Almost nobody codes much more than 5 hours a day in the long run. If you get easily bored, either do something more interesting or if that's not possible, change your disposition. The ability to put up with endless boredom is probably one of the most important skills for running a successful business.


Quote:
I enjoy the business side of things, and enjoy building business relationships.
Then you have to think like a business person and focus on what makes money and define your business.


Quote:
I'm also much more motivated by a potentially bigger payoff down the road, and investing a lot of my own money is kind of a thrilling concept.
Which means you can't be like, well, I like X, but I also kind of like Y, and I don't want to miss out of Z just in case it hits the jackpot so my business is going to specialize in mixing X and Y and Z.

TL;DR - If you want to run a consulting firm, run a consulting firm, if you want to be an angel investor, be an angel investor and if you want to start/work at a startup, do so, but have one clear goal and don't pursue multiple things which will simply give you a way to rationalize away any decision you make, however terrible it is.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 04:01 PM
Quote:
Originally Posted by Nchabazam
I know ruby on rails quite well, and have been doing a lot of work with angularjs lately. It doesn't really matter to me what type of site I'm building because they all have interesting challenges.... I just need to believe in the idea at least a little bit.
High demand technologies for sure.

Are you looking to basically create your own incubator, where people come to you and you build things for them and take equity?

I'm just kinda confused at the business model, but theres a million ways to make this fun and profitable.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 04:16 PM
Thanks candybar.

You make a lot of solid points, and I didn't quite explain what I'm trying to do as well as I should have.

So I know a few guys that are very solid developers, and do a lot of contract work. Basically, they have developed relationships and have too much work, as you described. Most of these guys aren't the types to want to try and start their own company for a number of reasons. So, if they're making $80 or $100/hour as a great developer, and pocketing 100% of that, they're doing pretty well for themselves.

I want to hire one or two guys that have a lot of demand for their services, and potentially pay them a bit more than they'd be making on their own, and give them people to work with. This could have the benefit of giving the contractor a bit higher hourly, as well as a bit more freedom with their schedule, as there are a few people to help cover that workload.

I plan on losing a fair bit of money initially to build up a brand. That $2-300k half mine, and half my Dad's, available today, in full. I have plenty of money to live on, and want to invest some of that sitting around to potentially grow a business of some sort.

I'm kind of mentioning a lot of different ideas because it's so early in the process, I'm not sold in any one direction. I mention angel investing because my family is all in finance, and I have some pretty amazing people to help me evaluate potentially profitable deals. I also don't necessarily need cash up to keep the business afloat, so it opens up more options for profitable long term deals.

And if someone I knew and trusted came up to me with a great startup idea and wanted to cofound, I'd probably do it. But the consulting idea is the first thing that came to my mind, and I think it has some merit. I just know I want to do something with my own money, and am not 100% sure what that is yet.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 04:19 PM
Quote:
Originally Posted by Larry Legend
High demand technologies for sure.

Are you looking to basically create your own incubator, where people come to you and you build things for them and take equity?

I'm just kinda confused at the business model, but theres a million ways to make this fun and profitable.
Ya, I mainly posted because it's a super preliminary idea, and I don't really have a business model yet. I just know I'm going to try and do something fun and profitable.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2013 , 06:25 PM
If those developers already have more work than they want/can handle why would they take on even more work from a third party individual?

I feel like throwing 3-4 of these people into a room together would be no different than them starting a company. If they wanted to work under those conditions they would already be doing so, but maybe I'm wrong.

Most (but not all) small dev companies start by cherry picking one person who is good at something from the necessary different positions or if they're lucky a few people who overlap skills but the main thing is they have someone who is strong in the core areas of what the company provides. They would try to assemble a good marketer, programmer, designer, etc.. Then instead of freelancing in isolation they come together to start a small firm.

If you just want to manage developers and find them work I'm 100% sure there's a market for that, but I feel like you would be getting random freelancers who might not be super established making $100+/hour. IMO there's nothing wrong with this though.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-30-2013 , 05:13 AM
Quote:
Originally Posted by Nchabazam
I'd probably pursue an idea if I had any. I mean, I think start ups tend to be more about execution than any one great idea, but I literally have none.
What areas would you be interested in...roughly? Or I guess what areas would you hate (accounting software for example :P).

Also: Where are you located?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-30-2013 , 07:22 AM
PSA:

in the chrome console, if you console.log an object with more than a few properties, so that it gets the folding triangle next to it to view it, it is lazily evaluated. Which means if you logged an object at the start of your program, and it was mutated later in your program, and after the program runs you go inspect the value output at the start of the program and have to unfold it to view it, the object property values will be those from the end of the program, not those from the time the object was logged. If you need the latter, you must serialize with JSON.parse or similar and output a string. I lost about 4 hours from that little beauty and thought the behavior was surprising so figured I'd share.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-30-2013 , 10:15 AM
Quote:
Originally Posted by clowntable
What areas would you be interested in...roughly? Or I guess what areas would you hate (accounting software for example :P).

Also: Where are you located?
I'm in Boulder, CO. And accounting software doesn't sound fun, nor does fashion, haha.

I think something in sports would be fun... but it doesn't matter a huge amount to me.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-30-2013 , 10:27 AM
Build a haralabob style data analysis tool for the MLB
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote

      
m