<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: thenduks</title><link>https://news.ycombinator.com/user?id=thenduks</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 07 Aug 2026 08:47:19 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=thenduks" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by thenduks in "Ask HN: Freelancer? Seeking freelancer? (March 2016)"]]></title><description><![CDATA[
<p>SEEKING WORK<p>Location: Waterloo, ON<p>Remote: Yes, and preferred<p>Resume: <a href="http://careers.stackoverflow.com/ryanfunduk" rel="nofollow">http://careers.stackoverflow.com/ryanfunduk</a><p>Strengths: Ruby (+Rails), JavaScript/ES6/Babel, CoffeeScript, Node, React, Redux, Backbone<p>Have had some experience with plenty of other things but those are the big ones. Happy and used to jumping into new things and unfamiliar codebases. Self-motivated and have started several products from scratch myself.<p>Contact info: <a href="https://ryanfunduk.com/contact" rel="nofollow">https://ryanfunduk.com/contact</a></p>
]]></description><pubDate>Tue, 01 Mar 2016 19:25:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=11205339</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=11205339</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=11205339</guid></item><item><title><![CDATA[New comment by thenduks in "Twitter's new timeline feature"]]></title><description><![CDATA[
<p>True but, in my opinion, inherent to Twitter. Just because some algorithm decides some tweet is 'important' doesn't mean I'll agree :)</p>
]]></description><pubDate>Thu, 11 Feb 2016 00:36:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=11077400</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=11077400</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=11077400</guid></item><item><title><![CDATA[New comment by thenduks in "Twitter's new timeline feature"]]></title><description><![CDATA[
<p>Have you considered using a client that doesn't stay scrolled all the way to the top (TweetBot has a toggle for "pin to top" for example)? I would find what you're describing pretty much a deal breaker in my use of twitter, so I use this feature and literally read every tweet from everyone I follow. When I open twitter (and it syncs between desktop/mobile), I'm at the same spot I was when I opened it last.</p>
]]></description><pubDate>Wed, 10 Feb 2016 15:51:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=11073495</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=11073495</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=11073495</guid></item><item><title><![CDATA[Immutable Data from Scratch]]></title><description><![CDATA[
<p>Article URL: <a href="http://ryanfunduk.com/articles/immutable-data-from-scratch/">http://ryanfunduk.com/articles/immutable-data-from-scratch/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=9772689">https://news.ycombinator.com/item?id=9772689</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 24 Jun 2015 16:29:51 +0000</pubDate><link>http://ryanfunduk.com/articles/immutable-data-from-scratch/</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=9772689</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=9772689</guid></item><item><title><![CDATA[React from Scratch]]></title><description><![CDATA[
<p>Article URL: <a href="http://ryanfunduk.com/articles/react-from-scratch">http://ryanfunduk.com/articles/react-from-scratch</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=9687129">https://news.ycombinator.com/item?id=9687129</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 09 Jun 2015 17:11:18 +0000</pubDate><link>http://ryanfunduk.com/articles/react-from-scratch</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=9687129</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=9687129</guid></item><item><title><![CDATA[Flux from Scratch]]></title><description><![CDATA[
<p>Article URL: <a href="http://ryanfunduk.com/articles/flux-from-scratch">http://ryanfunduk.com/articles/flux-from-scratch</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=9649638">https://news.ycombinator.com/item?id=9649638</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 02 Jun 2015 23:15:58 +0000</pubDate><link>http://ryanfunduk.com/articles/flux-from-scratch</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=9649638</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=9649638</guid></item><item><title><![CDATA[New comment by thenduks in "Those making $1,000+/month on side projects – what did you make?"]]></title><description><![CDATA[
<p>My first real side-project-turned-business is/was Bugrocket (<a href="https://bugrocket.com" rel="nofollow">https://bugrocket.com</a>, launched March 2011, bug tracking for small dev teams). Subscription-based and grows very slowly, it mostly hovers around $500/month in revenue. The market is just feels really small these days between Trello and GitHub Issues being decent now (in 2011 it was very lacking).<p>Next, my wife and I started CourseCraft (<a href="https://coursecraft.net" rel="nofollow">https://coursecraft.net</a>, launched December 2012, e-course creator tools + we handle transactions for 5%-9% of sales). Since it's transaction-based it's a lot less consistent monthly, but growing faster. A typical month is $300-$400 in revenue, but it's been a lot higher (and a lot lower) here and there.</p>
]]></description><pubDate>Fri, 09 Jan 2015 16:09:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=8862779</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8862779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8862779</guid></item><item><title><![CDATA[New comment by thenduks in "FFS SSL"]]></title><description><![CDATA[
<p>It's this kind of thing that gave us such a quick transition to Amazon and 'PaaS' providers becoming ubiquitous. You can avoid all of these problems and decisions by just giving your various certificates and stuff to ELB or Heroku.</p>
]]></description><pubDate>Fri, 17 Oct 2014 19:37:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=8472914</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8472914</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8472914</guid></item><item><title><![CDATA[New comment by thenduks in "One Less Password"]]></title><description><![CDATA[
<p>I've done the same thing in a few prototype-style apps I've built too. Not only do you not need to store passwords, but you can just ignore a whole area of UX.<p>Enter email to signup -> link gets emailed.
Enter email to login -> link gets emailed.<p>I use JWT for this and it really makes it easy to get started on the part of the project that matters... and sometimes (not always) I think it's probably going to be fine to leave it this way.</p>
]]></description><pubDate>Mon, 13 Oct 2014 17:09:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=8449533</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8449533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8449533</guid></item><item><title><![CDATA[New comment by thenduks in "What is wrong with Comic Sans?"]]></title><description><![CDATA[
<p>I think your logic is flawed a bit here. A <i>lot</i> of people absolutely will dismiss suggestions like "keep your IO functions minimal/separate" and "you should test your code" and etc essentially saying "it works fine for me."<p>But in general I agree with you. "Until somebody explains to me... a rational reason..." - I will explain it: It is detracting (however unfortunate that may be) from your message/content.</p>
]]></description><pubDate>Sun, 07 Sep 2014 16:39:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=8281634</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8281634</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8281634</guid></item><item><title><![CDATA[New comment by thenduks in "What is wrong with Comic Sans?"]]></title><description><![CDATA[
<p>Seems to me that the real/only reason for SPJ not to use Comic Sans is that using it distracts people (in general, since he notes that he gets lots of comments about it, I'm not personally distracted by it) from what he's saying.<p>So it might make sense to use a font that goes pretty much unnoticed, to put the focus on the content of the talk. Then again, maybe he is thinking more along the lines of "if my font choice is the most important thing to you, feel free to leave/not watch this talk."<p>I feel like, if I were advocating something (FP, Haskell, new ways of teaching computer science, or whatever), I would want to do everything I could to keep the discussion on-topic.</p>
]]></description><pubDate>Sun, 07 Sep 2014 13:46:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=8281101</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8281101</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8281101</guid></item><item><title><![CDATA[New comment by thenduks in "How Apple and Amazon Security Flaws Led to My Epic Hacking (2012)"]]></title><description><![CDATA[
<p>A good reminder to go and tell your friends/family "Run, don't walk, to backup all of your important data right now." and hand them an external hard drive. 2FA + a password manager and whatnot would be a good idea, too :)</p>
]]></description><pubDate>Wed, 03 Sep 2014 14:20:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=8263093</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8263093</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8263093</guid></item><item><title><![CDATA[New comment by thenduks in "Ask HN: Ideas for toy projects to build as an educational exercise?"]]></title><description><![CDATA[
<p>How about: a time tracker, HN clone/basic forum, simple Google Analytics clone, a password vault/manager (did this one recently, it was a lot of fun, <a href="https://github.com/rfunduk/mrpassword" rel="nofollow">https://github.com/rfunduk/mrpassword</a>).<p>Or how about some supporting type stuff: app error handling, a recommendation engine for your framework of choice, maybe a simple admin panel for doing support (using Postmark Inbound or some-such).<p>If you're into web stuff, it's always a good exercise to re-implement some complex plugin in a simpler way. I made a simple 'tour' plugin that a lot of people like (jQuery-TourBus), or you could make a simple carousel plugin, or maybe just make a simple sticky feedback popup thing, etc.</p>
]]></description><pubDate>Fri, 01 Aug 2014 21:15:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=8122840</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8122840</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8122840</guid></item><item><title><![CDATA[Belt and Suspenders]]></title><description><![CDATA[
<p>Article URL: <a href="http://ryanfunduk.com/articles/belt-and-suspenders">http://ryanfunduk.com/articles/belt-and-suspenders</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=8122735">https://news.ycombinator.com/item?id=8122735</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 01 Aug 2014 20:49:46 +0000</pubDate><link>http://ryanfunduk.com/articles/belt-and-suspenders</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8122735</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8122735</guid></item><item><title><![CDATA[New comment by thenduks in "Paypal has not been sending payment notifications to merchants"]]></title><description><![CDATA[
<p>Actually you can check if an account is verified!<p>Here's a snippet in Ruby I use to check. It's not perfect, but it catches a lot of cases:<p><pre><code>    # ...

    def initialize
      @request = PaypalAdaptive::Request.new
    end
    
    # ...

    def verified_status( opts={} )
      begin
        opts.assert_keys! :first_name, :last_name, :paypal_account_email
        result = @request.get_verified_status(
          emailAddress: opts[:paypal_account_email],
          firstName: opts[:first_name],
          lastName: opts[:last_name],
          matchCriteria: 'NAME'
        )
        Rails.logger.debug "PAYPAL VERIFICATION: #{result.inspect}"
        return result.success? && result['accountStatus'] == 'VERIFIED'
      rescue
        return false
      end
    end
</code></pre>
Here's the API docs: <a href="https://developer.paypal.com/docs/classic/api/adaptive-accounts/GetVerifiedStatus_API_Operation/" rel="nofollow">https://developer.paypal.com/docs/classic/api/adaptive-accou...</a><p>What <i>I</i> can't stand is that accounts in some countries (at least India) can't send payments from balance. So you can't get your fee. This is mentioned nowhere in the docs, a customer just hit it one day and that's how I found out. I asked paypal what other countries can't send payments and they said... wait for it... they "don't have a list". I kid you not: <a href="https://twitter.com/rfunduk/status/412980259001102336" rel="nofollow">https://twitter.com/rfunduk/status/412980259001102336</a></p>
]]></description><pubDate>Fri, 01 Aug 2014 19:10:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=8122233</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8122233</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8122233</guid></item><item><title><![CDATA[New comment by thenduks in "Paypal has not been sending payment notifications to merchants"]]></title><description><![CDATA[
<p>When dealing with PayPal, go for an elastic waistband as well :)</p>
]]></description><pubDate>Fri, 01 Aug 2014 16:13:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=8120977</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8120977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8120977</guid></item><item><title><![CDATA[New comment by thenduks in "Ask HN: Who wants to be hired? (August 2014)"]]></title><description><![CDATA[
<p><i>Location:</i> GTA-ish, Ontario, Canada<p><i>Remote:</i> Yes<p><i>Willing to relocate:</i> No<p><i>Technologies:</i> Ruby, Rails, JavaScript (CoffeeScript too), Node, jQuery, Backbone.js, AWS and ops experience, and the usual HTML/CSS/etc<p><i>Resume:</i> <a href="http://ryanfunduk.com" rel="nofollow">http://ryanfunduk.com</a> <a href="http://careers.stackoverflow.com/ryanfunduk" rel="nofollow">http://careers.stackoverflow.com/ryanfunduk</a><p><i>Email:</i> on my website</p>
]]></description><pubDate>Fri, 01 Aug 2014 14:58:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=8120196</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8120196</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8120196</guid></item><item><title><![CDATA[New comment by thenduks in "Paypal has not been sending payment notifications to merchants"]]></title><description><![CDATA[
<p>You can make an API call to check the status of a transaction very easily.<p>When my users are redirected back to my site (thanks page, or similar), I check if their transaction is completed, if not, I kick off an every-five-seconds check while asking the user to hold on while we talk with paypal. I will eventually fail after some number of checks of course, but this means PayPal can stop sending IPNs and everything will just keep going along just fine.<p>If the user might not end up back on your site for some reason, run a cronjob that tries to verify transactions created in the past day/hour/whatever.<p>An issue like this doesn't have to, and really shouldn't, cripple your business.</p>
]]></description><pubDate>Fri, 01 Aug 2014 02:05:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=8118084</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8118084</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8118084</guid></item><item><title><![CDATA[New comment by thenduks in "Ask HN: What do you think of this first employee offer?"]]></title><description><![CDATA[
<p>Is the salary enough to live comfortably on in the area whee the employee lives? Do the co-founders seem like they'd be good people to work with? Does the product/work sound appealing to work on for 2+ years? Is there an opportunity to learn a lot?<p>I think these are the things that will matter day to day more than any 'fairness'.</p>
]]></description><pubDate>Sun, 27 Jul 2014 12:42:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=8092583</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8092583</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8092583</guid></item><item><title><![CDATA[New comment by thenduks in "Ten Thousand Years"]]></title><description><![CDATA[
<p>Some people might be too curious to leave it alone, as in a few determined explorers won't be deterred, but maybe they'll avoid settling right on top of it at least?<p>Personally my first reaction to the Curse of King Tut would be "well, better safe than sorry" as I turn <i>right</i> around :)</p>
]]></description><pubDate>Sat, 26 Jul 2014 22:29:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=8091053</link><dc:creator>thenduks</dc:creator><comments>https://news.ycombinator.com/item?id=8091053</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8091053</guid></item></channel></rss>