I Almost Got a Job on 37Signals Job Board

So after my still developing issue, I went out trying to find some additional freelance work to help build up my portfolio and put some money away in the bank. I wanted to skip the oDesks and outsourcing sites and go for something I thought may be a bit better: Job Boards. So I checked out the 37Signals Job Board and found this post. How the brief was written scared me a little, but 37Signals charges a pretty decent amount to post a listing so I figured it was all going to be kosher. I added them to my list to contact and a few days later we spoke.
“phenomsolutions1″ messaged me with no introduction spitting out loose questions around his project. After his description of the product I informed him that doing this from the ground up would not be a inexpensive task. He informed me he had “loads of money.” After I quoted him, he quickly took that statement back and changed the scope of the project, we agreed on a price and the following conversation took place:
- phenomsolutions1:
- Do you have a merchant?
- Me:
- I’m sorry? For payments/my invoicing?
- phenomsolutions1:
- yes
- phenomsolutions1:
- Credit card processing
- Me:
- My myself I use PayPal and invoice through FreshBooks.
- phenomsolutions1:
- I dont use paypal, or use my credit card through paypal
- phenomsolutions1:
- any other option?
- Me:
- Out of curiosity, why not? I will have to look into another option.
- Me:
- (We could run the project through oDesk.)
- phenomsolutions1:
- What if we run it through 99designs?
- Me:
- That seems odd.
- phenomsolutions1:
- why
- Me:
- I think I’ll pass.
- phenomsolutions1:
- Why?
- Me:
- Because that isn’t the way business should be done.
- phenomsolutions1:
- Why not :S
- phenomsolutions1:
- paypal isnt the end of the universe, paypal is where i lost about 4 grand last time i used it.
- phenomsolutions1:
- Like what the heck is wrong with 99designs
- Me:
- Because 99Designs is used for contests. There is a slew of things you could do to cancel out the process along the way.
- Me:
- I have to protect myself here as well.
- Me:
- (I’ve been screwed a number of times myself.)
- phenomsolutions1:
- I will start the contest and give you the login details for the account and you can change the passowrd and take full control.
- Me:
- It’s okay. I think I am going to pass though. Best of luck with your project!
- phenomsolutions1:
- fuck you
- phenomsolutions1:
- faggot
- phenomsolutions1:
- you dumb dickhole
- phenomsolutions1:
- dont fucking insult me
- phenomsolutions1:
- calling me a scammer
- phenomsolutions1:
- fucking pussy
- phenomsolutions1:
- ill fuck you up
- phenomsolutions1:
- bitch
- phenomsolutions1:
- mother fucker
- Me:
- How am I insulting you?
- phenomsolutions1:
- fuck you.
- phenomsolutions1:
- Fucking cunt.
- phenomsolutions1:
- you fucking insulted me
- phenomsolutions1:
- you fucking idiot.
- Me:
- How so?
- phenomsolutions1:
- dont fucking insult me by calling me a scammer
- phenomsolutions1:
- shut the fuck up now
- Me:
- I’m just protecting myself in this situation.
- phenomsolutions1:
- your name is JIM WALKER, and you type *NOD* every 3 seconds
- Me:
- Have a good day.
- phenomsolutions1:
- so shutup
- phenomsolutions1:
- fucking clown.
That promptly ended my bid to do any work with him or his company. Do any of you run into this type of client every once and awhile? Or worse, have any of you ever gotten burned bad by a client?
DBSlayer is an awesome lightweight database abstraction layer that is used under high-load websites. While nothing I am working on is necessarily high-load I am going to be using DBSlayer to work on a few projects using Node.js (Which deserves a post of its own.) Installing the DBSlayer requires the following other libraries must be installed first:
- the Apache Portable Runtime (APR) library (1.0 or above)
- the Apache Portable Runtime Utility (APU) library (1.0 or above)
- the MySQL 5 client libraries (5.0 or above)
While somewhat basic you may run into an issue with this if you already have XAMPP installed on your machine. XAMPP keeps all of these files located in the /xamppfiles/bin/ folder. Therefore you need to modify your ./configure line when installing DBSlayer.
Not rocket science but it took me a few minutes to debug. Hopefully this saves someone some time.
This is the first part of a four part series that covers the history of Dragon Duel. Throughout November and December a post will be made each week to cover various aspects of the game’s history. Make sure to check back in.
So the launch of Dragon Duel got pushed back again — Not a surprise given the history of Dragon Duel. However in the mean time the site has been updated to take in any users who are interested in playing the beta when it releases. If you would like to sign up check it out.
Dragon Duel is an odd topic. Did you know there have already been four different versions of the same game rehashed over and over? We seem to keep going through a constant development cycle that never ends. The sad part is that all of these games ended up working really well too. We just never pushed them for release because they worked totally different that the original Dragon Duel did. We really wanted to keep the stats and current user base the same without having to change too much. This time around we kicked that philosophy out the door and revamped a lot of different metrics kind of combining elements from all of the other versions of Dragon Duel together. Lets take a look at the past shall well?
Dragon Duel (2005)
Started by Luke Hackett Dragon Duel started off of what is know as a “Dragon Swords” base of code. This was some base of code that a bunch of developers were working and it got leaked out onto the internet. Lots of bitching, moaning, and hacking up code later Dragon Duel gave its breath to the world and started to take in players. Luke’s invovlement in the game is somewhat unknown to me. I really did not know him nor was I a member of the DD community at that time.
Dragon Duel – Three Easy Payments (2006)
I approached Luke after seeing a post that he was selling his games due to a lack of resources. I emailed him on 5/16/06 and things started to get rolling. Price and other elements were discussed the basics came down to this (from his end):
- Two Games: DDRPG, SOD
- Totally unique!
- DDRPG.net
- $200!
So the deal went through, however with some snags. Luke told me from the start that all the games were unique:
Hey, DD is original but SoD was open source (I helped make the original source) but it’s so different it cannot be recognised as the way it originally was. I’m not really fussed on the price because I really need to sell… So pretty much offer a price and yeah I’d probably say yes.
![]()
–
Luke Hackett.
However a few weeks later I was informed they were just “clones”/rip-offs. Already having the code and paid into it we settled on $150.00 and I never heard from Luke again.
I moved Dragon Duel over to one of the original Bandhoster servers that I had and got everything setup. While the initial configuration wasn’t too bad the code was a pile of crap. Long blocks of code that looked similar to:
$checkban = Mysql_query("Select * from bans where id='$id'");
if(!$checkban){
Mysql_query("insert into bans (id,time,mod) values ('$id','$days','$playerinfo[username]')");
echo "Player $id has been banned for $days days.";
}else{
Mysql_query(”update bans set time=’$days’ and mod=’$playerinfo[username]‘ where id = ‘$id’ “);
echo “Player $id has been rebanned for $days days.”;
}
Mysql_query(”insert into bans (id,time,mod) values (’$id’,'$days’,'$playerinfo[username]‘)”);
mysql_query(”insert into usernews (id,user,text,time) values (”,’$id’,’$time You have been banned for $days days by $playerinfo[username] for unacceptable messageboard posts’,'$realtime’)”);
$bloke = $id;
// Manager Records
$plaintime = date (”l dS of F Y h:i:s A”);
$track2 = mysql_query(”INSERT INTO `trackweap` (`id`, `userid`, `adminid`, `change`, `tstamp`, `tstamp2`) VALUES (”, ‘$bloke’, ‘$playerinfo[id]‘, ‘Received a $days MB Ban from $playerinfo[username] ($playerinfo[id])’, NOW(), ‘$plaintime’);”);
$et=time();
//admin tracker
mysql_query(”insert into admintrack(time,admin,msg) values (’$et’,'$playerinfo[id]‘,’$playerinfo[username] has banned $id’)”);
$trackrecord = mysql_query(”INSERT INTO jailrecord (time, admin, convict, msg) VALUES (’$et’,'$playerinfo[id]‘, ‘$id’,’$id MBB for $time$gold‘)”);
// Add jail record
mysql_QUERY(”update jailrecord set convict=’$id’, jail_by=’$playerinfo[username]‘, jail_reason=’MBB for $gold’ where id=’$id’”);
// check unbanned
$resetthree = Mysql_query(”DELETE FROM bans where time=0″);
}
}
A lot of junk that we had to go through and try out best to fix. Little did I know that once I had this code up and running I was walking into a trap.
Ever notice that when you go to add an external link page in DotNetNuke that there is no option for it to open in a new window? Well I have two methods that you can go about to get this working on your DNN site. The first, not for the faint of heart, involves a little database work. The second is a quick Javascript fix.
The first method involves tricking DNN’s Tab table to thinking your URL link is something a little bit different.
- Open up the Tabs Table in your favorite SQL Editor
- Look for the URL field of the external link you wish to open in a new window.
- You may see something like: http://example.com
- You want to make it: http://example.com” target=”_blank
Once you save restart the application in the Host -> Host Settings page and view your link you should be good to go!
The second method is a bit easier however it does use Javascript instead of a normal link.
- In the external Link field on your DNN Page Settings you will see something like: http://example.com
- Change it to be: javascript:void(window.open(’http://www.example.com’))
And save.
A little DNN hacking never hurt anyone.
But it makes you wonder why they do not have this option implemented. And why they don’t validate external URLs when you add them.
