Quantcast

Jump to content


Photo

Neolib - A Python Neopets automated programming library


  • Please log in to reply
31 replies to this topic

#1 Josh

Josh
  • 318 posts

Posted 20 August 2012 - 06:05 PM

Neolib


Neolib is an in-depth and robust Python library designed to assist programmers in creating programs which automate mundane tasks on the popular browser based game, Neopets. The goal of Neolib is to objectify Neopets by translating it's many objects and tasks into classes and functions that represent them.



Project URL: https://github.com/jmgilman/Neolib
PyPi Release: http://pypi.python.org/pypi/neolib
Project Owner: [email protected] (AliasXNeo, Alias)
Repository Type: Git
Python Version: 3.2.3

Current Team Members
  • Alias (Project Leader)
Helpful InformationProject News
  • 21 Sep - Now that the base has been laid, Neolib is now open source again
  • 30 Oct - First major release of Neolib (V1.0.0)
Why Join?
  • By joining you will be participating in a project that directly helps Neocodex
  • Participation in the project will teach you important concepts that can help develop your skills as a programmer. These include version control, documentation, and all the little things you learn by interacting with other programmers in a project environment
  • Your contributions will help several programmers!
Before you join
  • Please checkout the repository from Github and spend time reviewing the code including any recent commits.
  • If you have any questions please feel free to contact a project member or join #neolib on Freenode and talk to someone in there.
  • Ensure to review any open issues and enhancements and check the wiki for amplifying information
  • Please understand that this project is running under Python 2.7.3. If you don't know what that means, please figure it out.
  • If you have never used Git, please use the above links to educate yourself prior to joining the project. It is vital you understand how Git works as it differs from it's counterparts like subversion.
  • Once you have completed the above steps, and thoroughly reviewed the project, then please submit an application (format shown below) via PM to me (alias).


--------------------------------------------------------------------------------------


Feel free to post your feelings, concerns, and/or broad questions below :p

Member Application
  • Name (First name):
  • Programming experience in years:
  • Proficient languages:
  • Experience with Python in years:
  • Have you ever used Git? If not, have you since learned how?
  • Have you ever been apart of a project like this? Explain.
  • Why do you want to join the project?
  • Any amplifying information?

Edited by Josh, 30 October 2012 - 09:32 AM.


#2 Kyle

Kyle
  • Legit.

  • 2082 posts


Users Awards

Posted 20 August 2012 - 06:23 PM

Well...nice to see you around! Been quite a while

#3 Josh

Josh
  • 318 posts

Posted 20 August 2012 - 06:26 PM

Well...nice to see you around! Been quite a while


Yeah, I decided to come hang out again and bring my passion for programming back :p Hopefully I can get this section a little more lively again!

#4 huevoquilmes

huevoquilmes
  • 245 posts

Posted 20 August 2012 - 08:11 PM

As soon as i have some free time, im going to look into this.. finishing my career in Software Engenieer.. made my own aber and little programs in java, would like to help with this proyect!

#5 Josh

Josh
  • 318 posts

Posted 20 August 2012 - 08:27 PM

As soon as i have some free time, im going to look into this.. finishing my career in Software Engenieer.. made my own aber and little programs in java, would like to help with this proyect!


Would love to have you on the team :)

#6 Josh

Josh
  • 318 posts

Posted 24 August 2012 - 08:40 PM

Neolib has moved to a private repository. I will keep the Google Code repository up for reference purposes, but please understand it will no longer contain the latest commits. As of right now my intentions are to not keep the project private, but while it's building it's base both in the code and documentation area, it will remain private.

This is no way affects applications. If you're interested in joining, the process remains the same. Thanks!

#7 artificial

artificial
  • 186 posts


Users Awards

Posted 07 September 2012 - 02:59 AM

lol. Why would you use Google Code over github. You noob.

#8 Josh

Josh
  • 318 posts

Posted 07 September 2012 - 05:28 AM

lol. Why would you use Google Code over github. You noob.


Liked the features of Google code over Github. Plus, it's Google, and I'm a Google fanatic :)

#9 artificial

artificial
  • 186 posts


Users Awards

Posted 07 September 2012 - 05:38 AM

A lot of open source projects are migrating over from Google Code. You should at least give Github a whirl if you want to encourage project collaboration.

#10 Josh

Josh
  • 318 posts

Posted 07 September 2012 - 06:13 AM

A lot of open source projects are migrating over from Google Code. You should at least give Github a whirl if you want to encourage project collaboration.


Doesn't matter seeing as it's already on a private Gihub repository (I mentioned this move a couple of posts up). I actually have the project on 3 different private Git hosts so that I can determine which works best for what the project requires.

And, I have used Github several times in the past, however this was my first time using Google Code.

#11 artificial

artificial
  • 186 posts


Users Awards

Posted 07 September 2012 - 06:15 AM

Doesn't matter seeing as it's already on a private Gihub repository (I mentioned this move a couple of posts up).


You mentioned it was private, you mentioned nothing about Github.

#12 Josh

Josh
  • 318 posts

Posted 07 September 2012 - 06:25 AM

You mentioned it was private, you mentioned nothing about Github.


Oops, well now you know :)

#13 Josh

Josh
  • 318 posts

Posted 22 September 2012 - 07:28 AM

The project has finally been pushed to open source again! The original post has been updated with the most recent information.

#14 Josh

Josh
  • 318 posts

Posted 05 October 2012 - 03:33 PM

Major revision was implemented today. Moved to Python 3.2.3 and completely reworked HTTP and configuration system.

#15 iargue

iargue
  • 10048 posts


Users Awards

Posted 10 October 2012 - 07:18 AM

Moving to python 3.2.3 may be a downfall of this system. Neocodex is still using the base python 2.7 and so they would have to update and rewrite a lot of their code to ensure that they can use it.

#16 Josh

Josh
  • 318 posts

Posted 10 October 2012 - 07:26 AM

Moving to python 3.2.3 may be a downfall of this system. Neocodex is still using the base python 2.7 and so they would have to update and rewrite a lot of their code to ensure that they can use it.


Neocodex has shown no interest in using or incorporating the library. As far as I am concerned it's an independent cross-community library. Not to mention that this library does most of what Neocodex already has implemented plus a lot more, so the only upgrade necessary would be whatever needs to be upgraded in the program manager.

That and I'm pretty sure we're both going different directions. I'm starting to focus this library to move into the cloud to allow developers to offer SaaS to parties interested in making a lot of NP in a very quick manner.

Edited by Josh, 10 October 2012 - 07:28 AM.


#17 Waser Lave

Waser Lave

  • 25516 posts


Users Awards

Posted 10 October 2012 - 07:31 AM

Moving to python 3.2.3 may be a downfall of this system. Neocodex is still using the base python 2.7 and so they would have to update and rewrite a lot of their code to ensure that they can use it.


There are also important Python libraries which we use that aren't yet available for Python 3 so it's pretty much a non-starter until they become available.

#18 Josh

Josh
  • 318 posts

Posted 10 October 2012 - 08:03 AM

There are also important Python libraries which we use that aren't yet available for Python 3 so it's pretty much a non-starter until they become available.


I think I have found alternatives to most them. There are a lot of non-official upgrades that I found that have worked really well.

#19 Waser Lave

Waser Lave

  • 25516 posts


Users Awards

Posted 10 October 2012 - 08:09 AM

I think I have found alternatives to most them. There are a lot of non-official upgrades that I found that have worked really well.


There probably wouldn't be enough benefit from moving to Python 3 to make it worthwhile to change everything though, that's the dilemma. :/ At the moment modules like django, which we make quite extensive use of, are still in the experimental phase with Python 3 so I think it would be better for us to have the stability of the Python 2.7 version for now. Perhaps that will change in the future, we'll have to see how it develops.

#20 Josh

Josh
  • 318 posts

Posted 10 October 2012 - 08:58 AM

There probably wouldn't be enough benefit from moving to Python 3 to make it worthwhile to change everything though, that's the dilemma. :/ At the moment modules like django, which we make quite extensive use of, are still in the experimental phase with Python 3 so I think it would be better for us to have the stability of the Python 2.7 version for now. Perhaps that will change in the future, we'll have to see how it develops.


You guys use your library with django? I didn't know that :p I figured django would be separate from the client side code.

#21 Waser Lave

Waser Lave

  • 25516 posts


Users Awards

Posted 10 October 2012 - 09:06 AM

You guys use your library with django? I didn't know that :p I figured django would be separate from the client side code.


We use Python on the client-side and the server-side and django makes up pretty much all of our server-side stuff now (we used to use all PHP on the server-side when we started the Abrosia/Item Database project) so it just makes more sense for us to stick to 2.7 for everything for now, in my opinion.

Out of interest, what benefits does your library get from being in Python 3 over Python 2?

#22 Josh

Josh
  • 318 posts

Posted 10 October 2012 - 09:17 AM

We use Python on the client-side and the server-side and django makes up pretty much all of our server-side stuff now (we used to use all PHP on the server-side when we started the Abrosia/Item Database project) so it just makes more sense for us to stick to 2.7 for everything for now, in my opinion.

Out of interest, what benefits does your library get from being in Python 3 over Python 2?


I've found that some of the core changes, especially dealing with the introduction of bytes, has increased performance over 2.7. I've also noticed that the changes made in how string encoding is handled has reduced some infrequent decoding errors with some user generated pages. Finally, I had a large desire to implement the Requests library, which has greatly helped simplify a lot of the library.

Furthermore, before I decided to make the move, I analyzed the current implementation and concluded that a move to Python 3 would not drastically break or cause any major rewrites. In fact, the "upgrade" to Python 3 took me 20 minutes at most.

#23 iargue

iargue
  • 10048 posts


Users Awards

Posted 10 October 2012 - 02:56 PM

Neocodex has shown no interest in using or incorporating the library. As far as I am concerned it's an independent cross-community library. Not to mention that this library does most of what Neocodex already has implemented plus a lot more, so the only upgrade necessary would be whatever needs to be upgraded in the program manager.

That and I'm pretty sure we're both going different directions. I'm starting to focus this library to move into the cloud to allow developers to offer SaaS to parties interested in making a lot of NP in a very quick manner.


When I was on the team, there were 3 different projects started during that time to create a Neolib project for us to use. The issue came that every single program had functions included it it that needed to be move over, but a lot of them had different names for it, or require different parameters due to it being a different coder who did it, or needed it slightly different to fit the program. This caused a huge amount of work to move all of the programs over to the new system. Our best chance at moving them over was when we created the Program Manager, but given that I was the one converting the programs over, I didn't want to convert 33 programs and modify them, so I just converted them over.

Your best chance of getting this project started without just you programming it would be to find someone who wants to create their own neopets program site and work with them, that way they are getting something from the programming and contributing. Thats just my two cents.

#24 Josh

Josh
  • 318 posts

Posted 10 October 2012 - 03:22 PM

When I was on the team, there were 3 different projects started during that time to create a Neolib project for us to use. The issue came that every single program had functions included it it that needed to be move over, but a lot of them had different names for it, or require different parameters due to it being a different coder who did it, or needed it slightly different to fit the program. This caused a huge amount of work to move all of the programs over to the new system. Our best chance at moving them over was when we created the Program Manager, but given that I was the one converting the programs over, I didn't want to convert 33 programs and modify them, so I just converted them over.

Your best chance of getting this project started without just you programming it would be to find someone who wants to create their own neopets program site and work with them, that way they are getting something from the programming and contributing. Thats just my two cents.


I really don't care how many people hop on with the project. It's here and it's open source for anyone to use. Besides, it's certainly already "started."

Anyways, like I said before, I'm taking Neolib in a different direction than what Codex needs or wants right now. I plan on starting something that's never been done before, and if it's successful, maybe Neocodex might be interested in incorporating it then :)

#25 RitzWin

RitzWin
  • 241 posts

Posted 20 October 2012 - 03:40 PM

Took a look at some of the code, good stuff!

I would be interested in working with it if I hadn't already created something similar for my own purposes and my daily doer ;)

If I didn't have my own project to work on, I would certainly enjoy working on it.


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users