I built this. Girlfriend needed this to organise her christmas party and we couldn't really find a nice one on the internet.. So I built it myself. Mostly for her and as an exercise for myself (I learnt the basics of Angular and NodeJS along the way), but then my designer friend came up with the design and we put it live. Hope you enjoy it.
It's been a long journey of playing around and never finishing small projects until I started this and then it suddenly clicked. I had a bit of PHP and Rails experience prior to this, but Node was pretty much new to me, except for the JS part. The whole async mindset got me in to trouble a couple of times on this project.
The courses on Codeschool helped me tremendously, and this was fun to play around with: https://github.com/rvagg/learnyounode. I read a lot of blogs and some books (will get links later if you want), but mostly it was just trying until it clicked.
The font indeed is a bit hard to read. We were in doubt about using it for a while because of this, but in the end we liked the handwritten lettering.. so we went with it anyway. :)
Was just about to set up a Secret Santa on Elfster... was wondering how your site stacks up in terms of facilitating a gift exchange between friends/coworkers?
I don't know Elfster, but after a quick look it seems like they offer wishlists, gift exchange, etc?
We send out an e-mail to everyone on the list saying that Santa is busy and asking them to buy a present for person x. The rest is up to them. Not as advanced I guess :)
Surprised you didn't know about Elfster - I thought about making my own app too, until I saw Elfster.
It's not quite perfect and seems to barely hold itself together (am I signed in, do I have account or do I not?!, etc..), but my friends and I have gotten by. I was able to invite people, remind them to join before the deadline and set exclusions on matchups (I didn't want significant others to get each other as well as people who aren't good friends). People have wishlists, like you mentioned. It's served us well enough for a one time thing, I'm not really sure what else I would need or want.
I guess one could extend the concept and become a broker for the gigantic anonymous gift exchanges? Like the Reddit Secret Santa, except people order from you or send you the packages? I know of people who never got their present even though they had sent a present.
My friend designed this, I did the front- and backend. It's just plain old HTML/CSS, using Jade for the views and Sass for the CSS, with some Bootstrap components. The grid especially was a great help.
Ha, looks nice! You could monetize this by letting everyone fill out a wish-list and offer affiliate-linked suggestions based on what is filled in?
(Same as http://namentrekken.be does this; that wasn't an option for your gf? :)
Does it? I checked this with Mailgun yesterday and they told me to send through the API instead of using SMTP. So I did, tested with Gmail today (where it was ending up in spam) and it arrived in the inbox.. I'll check with them again.
Still, if you send through their API you still need to list mailgun.org in your domain's SPF records (because you define ...@memofromsanta.com as the sender).
> IP Address 95.85.5.100 is listed in the CBL. It appears to be infected with a spam sending trojan, proxy or some other form of botnet.
> It was last detected at 2013-12-05 22:00 GMT (+/- 30 minutes), approximately 20 hours, 30 minutes ago.
> This IP is infected (or NATting for a computer that is infected) with a spam-sending infection. In other words, it's participating in a botnet. If you simply remove the listing without ensuring that the infection is removed (or the NAT secured), it will probably relist again.
I didn't track time on this, but it took me 5-6 days to get it all done. I wasted a lot of time though: I didn't know much about NodeJS backends when I started this, and next to nothing about AngularJS. I did a couple of things three times until I got them right; I used to work as a front-end developer until I got fired last month, so now I'm trying some new things. I'm glad it's an inspiration for you.
If you've built a simple web app, this is only a few hours of work. You'll spend more time handling the operational stuff like setting up DNS/Apache/EC2/WSGI.
If this is your first app, I'd expect around a week as you figure out routing, templating, orms.. If you were using Rails, maybe 2 days? This would be very similar to any of the intro project/tutorials.
Goodluck, though I have some advice: there are bigger problems to solve as a developer, this isn't one of them. This (and most web projects) are simply web forms that interact with a DB. It is no engineering feat.
Currently, when I fill out the form, I have no idea what's going out to the recipients - perhaps a mad libs-esque design would explain why each field, e.g. party title, is necessary :)
May I ask what you mean with mad libs-esque? I did think about what you're saying while developing it but we kinda rushed things and didn't get to focus on the design much. Maybe for next year? :)
I'm hosting this on a Digitalocean box, proxying Node through Nginx. Not sure if I did all that correctly, because that certainly was completely new to me, but it seems to work fine for now!
If someone tests this and their email goes to spam, would they be so kind to pastebin me the message headers/mime so I can try to solve that together with the Mailgun folks? Thanks a bunch.
It doesn't go to spam in my Gmail, which it did yesterday. However, some people are reporting the mail going to spam. This is why I'm asking, I can't test it myself on any account.
That may be true, I've never used Elfster, but the design of this landing page is far superior and more festive in my opinion. I probably wouldn't use Elfster after seeing this based on appearance alone.
This is cool but using Ghostery plugin on Chrome (https://chrome.google.com/webstore/detail/ghostery/mlomiejdf...) reveals 16 different javascript trackers and advertising libraries used on this website. I know in the footer it states "Memo from Santa does not store e-mail addresses. We will not send you e-mails apart from the event e-mail, nor will we use your e-mail address for any other purpose." but as this being a free service it's kind of worrying. Should I be worried about giving the emails of all my relatives and friends?
I suspect this is because of the addthis social services. Will dig into this later!
Edit: my Ghostery reveals just that: Addthis and Google Analytics. I could perhaps replace Addthis with just a Twitter/Facebook social button, but I liked the layout of the Addthis buttons.
I recently did Secret Santa app too, but it is frontend only (no server side, to be ran with all people present). I did it mostly to play with AngularJS, but it has some nice geeky features like using truly uniform shuffling and Fortuna PRNG for more unpredictability. It's in russian, but interface is pretty obvious, so feel free to try it :)
65 comments
[ 354 ms ] story [ 210 ms ] threadThe courses on Codeschool helped me tremendously, and this was fun to play around with: https://github.com/rvagg/learnyounode. I read a lot of blogs and some books (will get links later if you want), but mostly it was just trying until it clicked.
Really? When I needed one Elfster was pretty easy to find.
Landing page looks nice though.
Just one slight thing I noticed is that the "winsdom_scriptregular" font is quite hard to read.
The font indeed is a bit hard to read. We were in doubt about using it for a while because of this, but in the end we liked the handwritten lettering.. so we went with it anyway. :)
Great idea for a web app by the way!
Was just about to set up a Secret Santa on Elfster... was wondering how your site stacks up in terms of facilitating a gift exchange between friends/coworkers?
We send out an e-mail to everyone on the list saying that Santa is busy and asking them to buy a present for person x. The rest is up to them. Not as advanced I guess :)
It's not quite perfect and seems to barely hold itself together (am I signed in, do I have account or do I not?!, etc..), but my friends and I have gotten by. I was able to invite people, remind them to join before the deadline and set exclusions on matchups (I didn't want significant others to get each other as well as people who aren't good friends). People have wishlists, like you mentioned. It's served us well enough for a one time thing, I'm not really sure what else I would need or want.
I guess one could extend the concept and become a broker for the gigantic anonymous gift exchanges? Like the Reddit Secret Santa, except people order from you or send you the packages? I know of people who never got their present even though they had sent a present.
Otherwise, i think it looks great :)
"We'll make sure everyone knows for whom to buy a present!" vs. "We'll make sure everyone knows whom to buy a present for!"
Good job on the who vs. whom though..
[1] https://github.com/mailgun/flanker or http://documentation.mailgun.com/api-email-validation.html
> IP Address 95.85.5.100 is listed in the CBL. It appears to be infected with a spam sending trojan, proxy or some other form of botnet.
> It was last detected at 2013-12-05 22:00 GMT (+/- 30 minutes), approximately 20 hours, 30 minutes ago.
> This IP is infected (or NATting for a computer that is infected) with a spam-sending infection. In other words, it's participating in a botnet. If you simply remove the listing without ensuring that the infection is removed (or the NAT secured), it will probably relist again.
The warning I get from our network appliance: IP address is either verified as a bot or has misconfigured DNS.
I ask as a young developer looking to gauge where he stands. Anyone have resources they could suggest for gauging fast/slow development for oneself?
I am finishing something now that I hope to post to Show HN as well. Get some feedback, etc.
Edit: AKA derpson5, decided to change my username. Sorry HN DBs, wasted a record.
If this is your first app, I'd expect around a week as you figure out routing, templating, orms.. If you were using Rails, maybe 2 days? This would be very similar to any of the intro project/tutorials.
Goodluck, though I have some advice: there are bigger problems to solve as a developer, this isn't one of them. This (and most web projects) are simply web forms that interact with a DB. It is no engineering feat.
My name is ______(yourself) and this ____(verb) _______(noun)!
Hi Dinosaurs,
My names is atwebb and this is madlibs!
And you'd put the parens on the line, but I'm not sure of the markup for underlining here and feeling lazy.
Edit: my Ghostery reveals just that: Addthis and Google Analytics. I could perhaps replace Addthis with just a Twitter/Facebook social button, but I liked the layout of the Addthis buttons.
Not sure if you've fixed that already, but it seems like an important feature to get right...
EDIT: Should be fixed now :) Thanks again for pointing that out. I really need to adopt a TDD approach.
http://evgeniuz.github.io/santa/
press "+"
visible error message