

Tell HN: 2 weeks ago, I didnt know programming. I just wrote a web scraper. - naithemilkman

Feeling really chuffed and had to share. Great way to end the year.<p>To all business MBA guys learning to code: you can do it! just get started!!<p>Happy New Year guys :)<p>P.S It was in C# in case anyone is wondering.
======
rue
> _To all business MBA guys learning to code: you can do it! just get
> started!!_

No, all of you can't. But it's not a bad idea to try and see if you think
you'd like it!

I am reminded of the half-joking book title: "Learn to Program in 21 Years".

~~~
endian
"Teach Yourself Programming in Ten Years"

<http://norvig.com/21-days.html>

------
TomOfTTB
Congrats. Programming is made out to be a hard thing and for people who don't
think logically it is. But to a logically thinking person it's like the
greatest game you'll ever discover.

~~~
naithemilkman
I was intimidated for the longest time about picking it up. Partly because I
wasn't spectacular at math or algebra or statistics and all the arcane
calculus.

Part of the perfectionist in me was also trying to understand everything that
happened. Like what actually happens when I enter Console.WriteLine("Hello
world");? That is always going to be a losing better so I've since subscribed
to the "I know how to drive but I don't know how a car operates" school of
thought.

Somewhere along the way, I realised programming isnt about hardcore math but
more like just grouping actions together in a logical manner.

~~~
amackera
Perhaps programming doesn't resemble your perception of the maths you've been
exposed to, but honestly all of maths is grouping together actions in a
logical way. Programming is very much a certain kind of mathematics (though if
it helps to think of them as distinct, by all means do so!).

I relate very much to your perfectionist statement. Keep in mind that each
thing you learn about how the underlying machine operates will make you a more
effective programmer. Learn about the craft of programming (patterns of
design, abstraction, etc.), but don't lose sight of the fact that programs run
on physical machines, and our bound by the properties of those machines.

------
tdfx
Way to go. Now make sure you save your code and take a look at it in a year.
That's when you'll really see how far you've come.

------
rscott
Congrats, glad to hear you had success. I'm curious as to why you started with
C#. Most people these days are steered the way of Python or Ruby it seems.
Care you elaborate on your goals?

~~~
naithemilkman
My cofounders were C# guys. One new benefit I thought of recently was that C#
is similar to Java and thats what mobile apps are coded apart from
Objective-C. Who says the MVP has to be a webapp? :)

In anycase, my thinking was just get started first. Im probably going to
dabble in Python or Ruby (probably Python) just to see what its like at some
point. But for the time being, just getting my head down and writing code and
asking really n00b questions on stackoverflow is definitely the way to go.

~~~
cheald
If you're interested in web scraping, take a look at Mechanize (it's available
for Perl, Python, and Ruby, at least, though I prefer Ruby) - it makes web
scraping _trivial_.

~~~
naithemilkman
Im not interested in web scraping per se but in my previous gig, I was doing
erm some 'marketing' through social networks and I was frustrated at not being
able to contribute more actively to the process. The marketing work was
essentially a programmers job.

So its nice to be able to look under the hood now and see whats going on!

------
Qz
I would venture to say that you knew programming, you just didn't know
_coding_. Organizing a good program is not all that different from organizing
a good business.

~~~
zyphlar
I want to say you're totally wrong and ignorant, but in case you have a good
point, please explain. How is organizing a business like organizing a program,
practically speaking?

~~~
Qz
I was trying to keep my comment succinct, but what I mean is that at the
fundamental level, programming is problem solving, and so is running a
business. The ins and outs of particular businesses and particular programming
languages or computing platforms may vary, but if you're skilled at problem
solving (and it is a skill) then that skill is equally applicable in both
arenas.

------
cowmix
I did almost this exact same thing back in 2005. I had not programmed anything
in YEARS and I had to help write part of a system that performed DB queries,
screen scraped, file transfers, etc.

In a 24 period I tried Java, Perl and Python and in the end Python won by
miles and miles. I now use Python daily for all sorts of tasks. I love it.

~~~
naithemilkman
You mean in 24 hours? I think its gonna take me at least a few days lol

------
michaelty
Good for you. Personal development never ends.

------
code_duck
Yeah, that was what I did when I didn't know anything about programming, too.

The next step is to learn why web scraping is discouraged, and how to use
public APIs instead.

~~~
jacquesm
> The next step is to learn why web scraping is discouraged, and how to use
> public APIs instead.

Right, just like google uses public api's to access all those sites. Web
scraping is responsible for a very large portion of all the traffic on port 80
and the number of sites that have published APIs is extremely small compared
to the total.

~~~
code_duck
I know, it's odd how some people act like all web scraping is a terrible
thing, when people have built such large businesses based on it. Companies try
very hard to get scraped by Google, and don't like being scraped by other
random entities so much - I suppose it depends on your intent. Poorly written
spiders are a problem for system admins.

If a resource does have a public API, some very positive things about using
that instead are that not only is it less resource intensive for them, it is
much easier for you to create and maintain. If you're relying on scraping to
get specific info from a site, it's a huge Odin when changes to their HTML
break your code.

------
revorad
Well done! If you write a detailed account of how you did it, you are bound to
inspire a lot more people to try it out.

------
rman666
Your next step on the path to being a hacker is to share your work. Where can
we see your "web scraper" in action?

~~~
naithemilkman
I don't know where can I post it? Probably post it to my blog once I've
commented it up. Heading out for dinner with the gf so check later! FYI, it
looks like a thing of beauty to me but it probably looks like dogshit to the
pros. lol.

~~~
rman666
You will learn a great deal by posting your work for others to see. At first
it will feel uncomfortable. You will be concerned that others will mock your
work (and they might). But, by the 3rd or 4th time you post your work you will
start to feel comfortable with it. The important point is that others will
benefit from your experience. Karma.

~~~
naithemilkman
What a nice thought. Someday someone is going to benefit from the code I
wrote. LOL!

I feel like 10,000 miles away from that right now.

------
cheald
If you'll permit me to be annoyingly geeky, "That's good. You have taken your
first step into a larger world." :)

~~~
naithemilkman
Achievement unlocked! Startup Padawan ranked attained!

------
naithemilkman
Thanks for the support and positive comments guys :)

------
cabalamat
Well done!

------
arnorhs
Congratulations.

