[A Journal] A Programmers Journey Into SEO

From my side also good luck! Looks all quite promising, I am on a very similar track but program only for my own purposes.

If you think in terms of scalability, have you ever thought about distributed computing? I am trying a very interesting yet easy to use lib where you can easily distribute threads (java). Pimping existing programs does not require much work - this is what I am working on currently.
 
Thanks for the replies, everyone.

Cooo-kies, that's an interesting idea, actually. I'm going to look into that. I've done some initial research and it looks fairly simple to integrate. I will consider this heavily in the next few days and may consider posting an example of what I come up with. I'm working on another project at the moment, so time is a little tight right now, but I think you've found the right idea with the distributed computing.


madoctopus, that's fair and good. I'm curious how much of that you have actually implemented. Seeing as this is my full time job, my income is largely dependent on the work I actually produce, so while I have a list of things to implement, they'll actually eventually be done. Although I appreciate the support.

Lastly, I'll answer the questions you asked NTG98,

Wow. I started programming a bit about a year ago for SEO purposes. I have one question: how in the world are you able to code so quickly? It seems like it takes me forever to automate simple tasks online like google queries and wordpress POST requests. It took me several hours to figure out how to configure a proxy checker, and from the looks of it, it took you a few minutes!

Here's how it usually goes for me, do you have any tips? Maybe I'm going about this the wrong way...:
*spend an hour or so on BHW trying to find out where to get proxies (you mentioned 360!?!)
*then I try to figure out how to do a curl or wget request, which usually has problems with analyzing the data, so tack on another hour
*now where in the world do I find a proxy checker? I need to look for software that I can interface with, right? Or I'll just have to figure out how to make my own proxy checker, which takes a few hours to figure out what exactly it is that they're doing
*now I can finally code the proxy checking script, and guess what- more bugs, another hour
*finally I finish the code and it works pretty well, but it took forever to write
Programming takes a lot longer than it needs to typically due to flaws in logic and errors in planning. Planning how you're going to do repetitive tasks in an easy way. If you actually know what it is that you're trying to do, its just a matter of getting there. You may take a long time if you're vague about what it is you're trying to do.

So here's how I manage to get proxies:

  1. Go to google and search: +":8080″ +":3128″ +":80″
  2. In the search settings, select the last 24 hours.
  3. Write a simple script to visit google, and parse all the results
  4. Visit those websites
  5. Use a simple IP:port(:username:password)? type regex and search the result of those websites
  6. Format the proxy and add it to a list
Since we have laid out what we want in order to get proxies, this is simple. Its also ideal to use in a program as a default scrape site since the proxies rotate every 24 hours.

Now you'll have about a thousand proxies in which you can test. In order to test proxies, you know you'll need a few things:

  1. Check the users external IP address
  2. You need a list of proxy judges. There are tons of public ones. Load the list and check the judges by visiting them without a proxy. Check to see if the users external IP is somewhere on the page. If it is, the judge is clearly working as intended.
  3. Load your proxies and cycle through them, visiting your judge. If the page loads, the proxy works. If your external IP is found anywhere in the returned results, the proxy is transparent. If it is found no where at all, it is anonymous. You can then check against the settings you defined to save this proxy or not
So now you know you need to lay your program out to do the following things in this order:

  1. Scrape Proxies
    1. Visit google's returned index, and scrape the results for links
    2. visit those pages, parse proxies and format them as webproxies
  2. Testing Proxies
    1. Check the users external IP
    2. Check the judge to make sure its working
    3. Connect to the judge with a proxy and see if your ip is there
  3. Save the results

This is a total of 6 functions and maybe two classes that need to be written. You can do this in about an hour if you just lay out exactly what it is you need. I can write things fast because I plan far ahead. I also spend a large portion of my time building classes which I can reuse in other programs. This makes development really quick. I've worked in programming for years and know the value a good library can bring to the table.

Thanks for the support

edit: the tl:dr version: Lots of flow charts.
 
Last edited:
In all of that, I forgot to upload my progress for the day. I've took on the socks problem and threw together a little bit of a mixture of httpwebrequest and socks. Socks proxies are still being a pain to integrate. If anyone knows an easier way of doing this in c#, I'm all ears. Anyhow, I brought the webrequest up to release standards, made it use asynchronous requests better, and integrated some socks abilities, although I have not made the entire switch just yet.

In terms of the main software that I started the opening post with, I've produced a working concept program (which is seen in the OP.) and now I'd like to bring it up to release standards. I started implementing the controls I'd like to use, and figured rather than a list view, a custom control would look nice. I gave an example of two unfinished user controls added to the panel in the pictures. They obviously are just for example so the settings are the same and its a little ugly right now. The idea is that campaigns function in a linear manner, so that if you add a campaign to register hotmail accounts, it will save the result of that campaign in a #Macro. The macro will be what ever you named the campaign. You can then use those macros anywhere in the program in the respective fields.

So for example:

  1. Make a campaign #RegisterHotmailAccounts
  2. Add another campaign using the service to register youtube accounts. In the textbox it asks you to load an email file, you just type #ReigsterHotmailAccounts.
  3. It will register as many accounts as you have specified in the hotmail campaign, and then move on to the youtube campaign, loading the returned value of the hotmail campaign.
You can then save these campaigns and compress them down into one and name it as a service. This will allow you to set up services that will auto register hotmail, youtube, or what ever accounts as well as process them, send emails, or build links. Anything that can be done via the http protocol.

Thats the plan at least. I have the macro system mostly complete seen in the macro example. I have the webrequest class almost up to snuff where I want it. The rest is just cleaning up already existing code and implementing it into the new UI, which also remains unfinished.

There's a bit of work to go, but everything is coming along smoothly. Once I finish this app, it will allow me to basically do anything I want, with basically absolutely 0 development time for websites. This entire program's addon section is so simple in its current form, it can be ran on text files. I'm considering allowing users to add their own plugins, but this may make the software fairly insecure on a sales level.
 
Did some more work on the layout. Thoughts and opinions would be nice. No labels or buttons are hooked up right now for the most part, so obviously it'll look a little different when its actually implemented, but for a rough layout, I think it looks okay. But its not my opinion that matters, haha.

So if anyone wants to answer: These are both implementations of the same thing. Which one looks better in your opinion? What would you say is important to the layout? What would you add if you could? What would you take away?
 
Last edited:
I have implemented very little. Had some bad 6 months with no drive and no energy.
 
How do you figure out if a proxy is socks or http? you just check both ways of connecting and see which works?
 
Did some more work on the layout. Thoughts and opinions would be nice. No labels or buttons are hooked up right now for the most part, so obviously it'll look a little different when its actually implemented, but for a rough layout, I think it looks okay. But its not my opinion that matters, haha.

So if anyone wants to answer: These are both implementations of the same thing. Which one looks better in your opinion? What would you say is important to the layout? What would you add if you could? What would you take away?


I like the first one.
 
Hey everyone.

Thanks for the replies and support. After dicking around for about 3 hours trying to figure out what it was I was trying to do, I through together a little flowcart. I figured I'd share that here as well in-case anyone had a similar idea.

My brother came over to visit, today is my late Grandmother's birthday, so we figured we'd spend today together. I probably wont get much work done today, but I'll upload how far I get into the program.
 
Hello Everyone.

Well, my brother hung out a bit late so I didnt get too much work done. What I did finish, though, is nearly the entire backend. I'm hooking up buttons right now. I have to finish the IO code and the plugin class and code wise this should be finished. What remains is buttons and some extra features like campaign scheduling which I'd like to add.

I'm super excited to almost have this project finished so I can move on to making some actual money with it. I've been amassing hotmail accounts. I just need to pick what I want to go after with those accounts. I can make twitter accounts fairly easily, youtube as well. Perhaps those next? Then I can start using this to push traffic.
 
Although its not much, I figure I will return to the followers of this thread.
I'll be holding giveaways now and in the future for things that I can do with this software. These will be tiny gifts, but still something for the community. IE: A few accounts, back-links, etc. Prizes will reflect what stage of development the software is in (IE: If I'm making a youtube bot, the prize will be youtube accounts, etc.)

They will be randomly posted from time to time. Winners for these little giveaways will be randomly selected from those that post from the time the contest is open until it ends. You may enter as many of the giveaways as you want, even if you've won one in the past. I will select the names (One entry per person for each give away) and randomly select a winner.

With that being said:
SquaredSoftware's first giveaway!
First Prize: 70 Hotmail Accounts
Second Prize: 10 Hotmail Accounts
Third Prize: 5 Hotmail Accounts

All you need to do to enter is post! This giveaway will end Saturday at Midnight EST.
 
Very interesting journal. Very good written actually. Keep posting your thought. There are some things new in your written. Thanks for sharing.
 
If anyone else wants to enter for the Hotmail accounts, this contest is still open.
 
23 minutes left to win some free stuff.. No one wants them? haha.
 
Cortexmoza, send me a PM to claim your accounts.
 
My brother came over again, and on top of that, my internet has been down for three days. My ISP sucks. :(.

In regards to the software at hand, the production UI is nearly finished. I'll upload everything tomorrow, but see the attachment for a quick peek at what this will look like and what it'll do. I have 5 plugins right now that I am updating to the new production version. Some time this month this software will be finished and shipped. I'll post details on plans and income levels when everything is wrapped up.
 
Here are the updated pictures for the night. Feel free to tell me to change something if you dont like it.
 
So goes programming... It's never the sexy business but in the long run it's better to know your way around. From my perspective, it looks fine, but as a fellow programmer, I don't really care about aesthetics so long as the program works wonders.
 
Yeah, the UI is part of the experience of course. Plus, its centered around the functionality of the program. Maintainability is of course also part of that formula.
 
Since you copied the UI from VenomSEO PRO, maybe you should change it a bit, right?

After all, as you said yourself, plagiarism is a serious issue.

Best of luck,
 
Back
Top