Re: Hiding code from intruders, a different slant on an old question

2015-10-07 Thread Littlefield, Tyler
On 10/7/2015 5:38 AM, c...@isbd.net wrote:
> I know questions similar to this are often asked but my reasons for
> wanting to do this (and thus ways it can be done) are slightly different.
>
> I have a number of little utility scripts (python and others) which I
> use to automate the process of decrypting and displaying things like
> files containing passwords.  
>
> The encryption I use is reasonably secure anyway but I'd like to hide
> the programs/methods I use so that:-
>
> 1 - The encrypted files are not identifiable as encrypted data (the file
> command just returns 'data' so they can't be identified by that).  If
> there's a script in my ~/bin directory that relates directly to the
> files it's obvious they're encrypted.
>
> 2 - The method used for encryption isn't obvious, again an obvious
> script will show the program I have used.
>

You have two options here:
1) Use a strong encryption like aes256 etc and don't bother trying to
"hide" the code because it's just a blob of data and they'll not crack it.
2) Encrypt the whole drive if you use something like *nix/*bsd.
The only thing hiding the code will do is make them guess at the method.
But if you use a good method in the firstplace, you shouldn't have any
issues because it's not going to be cracked.

> I *could* write a C program which just exec()'s the required programs,
> if they're done separately this would be fairly well hidden but I was
> wondering if there's anything more obvious I can do that enables me to
> do things easily in Python.
>
>
> This is for protecting against any possible intruder who has gained
> access to my system by breaking an ssh password or stealing my laptop
> for example.  It's *not* for hiding code that I'm giving to others,
> I'd be quite happy to give the code in question to people who might
> want to use it.
>


-- 
Take care,
Ty
http://tds-solutions.net
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: I'm using Sphinx, but is there a UML auto generator

2015-10-02 Thread Littlefield, Tyler
> You can use Graphvix and Plant UML from inside Sphinx.
> http://build-me-the-docs-please.readthedocs.org/en/latest/Using_Sphinx/UsingGraphicsAndDiagramsInSphinx.html
> 
> Laura
> 

Keep this in mind: However you write your docs, they should be
accessible for everyone to use. That is to say, screen readers should be
able to use them as well--perhaps try explaining this dependency in a
format across all the docs in text as well?
HTH,
-- 
Take care,
Ty
twitter: @sorressean
web:http://tysdomain.com
pubkey: http://tysdomain.com/files/pubkey.asc
-- 
https://mail.python.org/mailman/listinfo/python-list


replace parens update

2015-06-01 Thread Littlefield, Tyler
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hello all:
I've put a new version here:
https://dl.dropboxusercontent.com/u/10204868/replace_parens.py

It's for me, a lot easier to understand. It uses regex to replace
parens rather than using a state machine and conforms to the python
standards for naming and conventions.

HTH,
- -- 
Take care,
Ty
twitter: @sorressean
web:http://tysdomain.com
pubkey: http://tysdomain.com/files/pubkey.asc
-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iQEcBAEBAgAGBQJVbJgbAAoJEAdP60+BYxejGSoIAJUc3n7dL74MOc6APQ1gY+io
iQhMtmYEp2s5zjv7NP7i+ENWBys8+r7GDBghYW6xrV1JD24VuSFWi1Zya1RuRy2b
v95b+EH/ppHGva4jF71uBAVW4Rh3gdW0uqDrmW4FCdWhZaTATv3hlwG/M5QcFvjF
fDj/lXEB/zljqmf8Hdp3FuHj+QkwJwZihVOhHOHIiZ4zXMlT2J+M76LQKdHcMpFE
SJVaju5isJYEWXGJ9r/iJwgf87Y9fe20bWfqNw0MQtxjiApwo5wcvZshBz6vbLHg
ehKRD/Xz9yBSWnfTrSw0wkOE1uVk4cQlVLhBkP6WvfSf1UYKtXnf6zyNwILu+Rs=
=Ka2/
-END PGP SIGNATURE-
-- 
https://mail.python.org/mailman/listinfo/python-list


a couple of questions: pickling objects and strict types

2013-04-05 Thread Littlefield, Tyler

Hello all:
I've been using Python for a while now, but I have one larger problem.
I come from a c++ background; though it doesn't help in catching runtime 
errors, being able to compile a program helps catch a lot of syntax 
errors. I know about pychecker, which is somewhat useful. Do people have 
other methods for handling this?


Also, I'm depickling objects. Is there a way I can force pickle to call 
the object's ctor? I set up events per object, but when it just 
deserializes it doesn't set all that up.

Thanks,

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: a couple of questions: pickling objects and strict types

2013-04-05 Thread Littlefield, Tyler

On 4/5/2013 2:30 PM, Steven D'Aprano wrote:

On Fri, 05 Apr 2013 12:59:04 -0600, Littlefield, Tyler wrote:


Hello all:
I've been using Python for a while now, but I have one larger problem. I
come from a c++ background; though it doesn't help in catching runtime
errors, being able to compile a program helps catch a lot of syntax
errors. I know about pychecker, which is somewhat useful. Do people have
other methods for handling this?


Do you tend to make a lot of syntax errors?

Not a -lot-, but there are things I don't catch sometimes.


Python also catches syntax errors at compile-time. I won't speak for
others, but I hardly ever make syntax errors: between Python's simple,
surprise-free syntax, and modern, syntax-colouring editors, I find that I
rarely make syntax errors.


I am blind, so colorful editors don't really work all that well for me.


Also, I'm depickling objects. Is there a way I can force pickle to call
the object's ctor? I set up events per object, but when it just
deserializes it doesn't set all that up. Thanks,

What's the object's ctor? What sort of objects are you dealing with?




def __init__(self):
self.events = {}
self.components = []
self.contents = []
self.uid = uuid4().int
self.events['OnLook'] = teventlet()


Basically events don't get initialized like I'd like after I depickle 
objects.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: design question:game skill system

2012-10-03 Thread Littlefield, Tyler
I just wanted to say thanks to all the people that provided input, both 
aonand off list. It gave me a good direction to head in. Thanks again.

On 10/2/2012 2:34 PM, Ian Kelly wrote:

On Tue, Oct 2, 2012 at 2:00 PM, Littlefield, Tyler ty...@tysdomain.com wrote:

Hello all:
I'm looking at a skill/perk system, where the player builds up his char by
using perk points to add abilities.
Each perk is under a category, and generally costs go up as you increase the
perk.
So I'm trying to figure something out; first, I'd really like the cost
calculation and all of that to be dynamic, so that I don't have to write a
calculateCost per object. I'd also like to be able to specify dependencies
and say a level, as well as other factors before a player can obtain a perk
and have them self documenting. The idea is that a player could do something
like:
data perk extended health
and it would tell them they require health at 50 before they can purchase
extended health, as well as the cost, the increase per level and the total
overall cost.

What are the cost calculations based on?  If there are specific
formulas then you would need to store them somehow, possibly just as a
function to be called or string to be evaled, but if the security of
the perk database is of concern then you could engineer a more
sandboxed representation.  For dependencies, you can keep them in a
container.  An extended health perk might look something like:

cost_formula = 5 * level ** 2
dependencies = {HEALTH: 50, PLAYER_LEVEL: 15}
benefits = {HEALTH: 7 * level}

where HEALTH and PLAYER_LEVEL are just some arbitrary known constants.
  Your core perks library would then be responsible for looking this
information up, running the formulas, and performing whatever
calculations on it are needed.


Finally, I'm curious how to store and calculate these. I thought about using
a uid per perk, then storing something like: {uid:level} on the player, but
means that I have to lookup the name somehow still in the main perk
database, then use that uid to check if the player has it. Are there better
ways of storing skills?

When you say uids, you mean UUIDs, right?  I'm not sure what advantage
there is in using abstracted unique identifiers for these.  Assuming
you have full control over what perks are added, you can ensure there
will be no name clashes, so why not just use the name or a name-based
tag to uniquely identify each perk?  Regardless of how you identify
them, though, your code is at some point going to have to go to the
database to look them up, so I would suggest you just go ahead and
write that code, and then you can add some caching later if it turns
out to be needed.


I'm also thinking about calculation; currently the
CalculateMaxHp method would have to add up all the possible perks for
health, then add stats and all that. That could get really rough on
performance if it's called often; would something like a cache work, where
you have something like: {attribute:dirty}? So if I call CalculateHealth, it
checks for the dirty flag, and if it doesn't exist just returns the previous
max HP, but if the dirty flag is set, it recalculates? Then anything
modifying health (level gains, perks, stat increases/etc) would just set the
dirty flag and call calculate?

Sounds reasonable.  I wouldn't use a separate flag attribute, though.
When max HP becomes dirty, clear the cached value, and use the absence
of a cached value to inform your code that it needs to recalculate.



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


final question: logging to stdout and updating files

2012-10-03 Thread Littlefield, Tyler

pHello all:
I've seen frameworks like django reload files when it detects that 
they've been changed; how hard would it be to make my engine reload 
files that it detects were changed? I'm also curious how hard it would 
be to build in some error recovery. For example right now when an 
exception occurs, the player is sometimes just left hanging. It's a lot 
harder with Python for me, because I don't get the compile-time errors 
that I would with c++ for example to know that I did something wrong; 
while that's not always useful/and by far it doesn't catch everything, 
it does help. I'm familiar with things like pychecker, but it seems to 
be reporting a lot of issues that aren't issues. For example, I have a 
world module which is the core of the engine; it handles players, as 
well as keeps tracks of all rooms that are loaded in the game and that. 
Because player and world would have circular imports, I just pass the 
world object into player functions like logon/create. Pychecker tells me 
that the world parameter (which is a local var at that point) shadows 
the world variable in world; world is a singleton, so when you import 
world it just has a world = World() at the bottom of the module.


also: I have the following code:
logging.basicConfig(filename=path.join(logs, mud.log), 
level=logging.DEBUG)

logger = logging.getLogger(__name__)
logger.addHandler(logging.StreamHandler())
I like it displaying to stderr since usually when I'm doing this I'm in 
screen bouncing back and forth between the output and the tt++ session, 
but right now I can't get a couple of things; I'm not sure how to set it 
to log and all other messages to stderr as I did for the file, and I'd 
like to use a rotating log handler so that it'll rotate when the files 
are say above 16 KB or something. Is it possible to do something like 
this; perhaps make it compress the file before it writes to disk, or 
call a command to do so, so that it wouldn't hang the entire mud while 
it compresses?

Thanks, and sorry again for all the questions.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


design question:game skill system

2012-10-02 Thread Littlefield, Tyler

Hello all:
I'm looking at a skill/perk system, where the player builds up his char 
by using perk points to add abilities.
Each perk is under a category, and generally costs go up as you increase 
the perk.
So I'm trying to figure something out; first, I'd really like the cost 
calculation and all of that to be dynamic, so that I don't have to write 
a calculateCost per object. I'd also like to be able to specify 
dependencies and say a level, as well as other factors before a player 
can obtain a perk and have them self documenting. The idea is that a 
player could do something like:

data perk extended health
and it would tell them they require health at 50 before they can 
purchase extended health, as well as the cost, the increase per level 
and the total overall cost.

Any ideas on how to set this up would be really appreciated.
Finally, I'm curious how to store and calculate these. I thought about 
using a uid per perk, then storing something like: {uid:level} on the 
player, but means that I have to lookup the name somehow still in the 
main perk database, then use that uid to check if the player has it. Are 
there better ways of storing skills? I'm also thinking about 
calculation; currently the CalculateMaxHp method would have to add up 
all the possible perks for health, then add stats and all that. That 
could get really rough on performance if it's called often; would 
something like a cache work, where you have something like: 
{attribute:dirty}? So if I call CalculateHealth, it checks for the dirty 
flag, and if it doesn't exist just returns the previous max HP, but if 
the dirty flag is set, it recalculates? Then anything modifying health 
(level gains, perks, stat increases/etc) would just set the dirty flag 
and call calculate?

Thoughts/ideas would be welcome.
Thanks,

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Python source code easy to hack?

2012-09-28 Thread Littlefield, Tyler

On 9/28/2012 9:19 AM, stu...@molden.no wrote:

kl. 16:38:10 UTC+2 fredag 28. september 2012 skrev Jerry Hill følgende:


This is true, but both java and .net are also relatively easy to decompile.

Neither of them are very obfuscated.



In general though, why does it matter?

Paranoia among managers?



What are you trying to protect yourself against?


Embarassment?

Patent trolls?

Unauthorized access to priviledged features?

Industrial espionage?

Sounds like a web solution is the best way. Use a thin client and run your 
NSA-level code on a server. It's worth pointing out though that even c/c++ 
isn't free. If someone wants to decompile or disassemble your code bad enough, 
it's going to happen.
 


If you must keep anyone from ever seeing how your code works, the only way to 
do that is to keep all the sensitive bits running on a machine that you control.

Indeed :)



Sturla



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


teventlet: a light-weight method for handling events

2012-09-27 Thread Littlefield, Tyler

Hello all:
This was my first PyPi project to create. I'd like some feedback as to 
whether or not something like this is even moderately useful, and what I 
could do better with it.

The blog article that details some of this is:
http://tds-solutions.net/blog/?p=137
And the PyPi page:
http://pypi.python.org/pypi/teventlet

Essentially, Teventlet is just a handler that allows the registration of 
multiple callbacks; when something calls invoke, it dispatches all 
arguments to each individual callback. It's pretty small, and probably 
something anyone who is reasonably skilled could have written in a few 
minutes, but I wanted to put it out there anyway.

Any ideas, suggestions/etc would be welcome.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: test

2012-09-27 Thread Littlefield, Tyler

On 9/27/2012 3:36 PM, Devin Jeanpierre wrote:

On Thu, Sep 27, 2012 at 5:28 PM, ForeverYoung rsn...@gmail.com wrote:

Please ignore this post.
I am testing to see if I can post successfully.

Is there a reason you can't wait until you have something to say / ask
to see if it works? You're spamming a large number of inboxes with
nothing.


I'm kind of thinking complaints about it are just doubling the spam to a large 
number of inboxes. You could've just doubled the spam in the OP's inbox and 
that would've been that.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Article on the future of Python

2012-09-27 Thread Littlefield, Tyler

On 9/27/2012 9:05 PM, Jason Friedman wrote:

Fair enough, but it's the M in the LAMP stack I object to. I'd much
rather have P.

+1



I know this isn't the list for database discussions, but I've never 
gotten a decent answer. I don't know much about either, so I'm kind of 
curious why postgresql over mysql?


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Stop feeding the trolls (Was: which a is used?)

2012-09-27 Thread Littlefield, Tyler

On 9/27/2012 10:50 PM, Dwight Hutto wrote:

On Fri, Sep 28, 2012 at 12:40 AM, Chris Angelico ros...@gmail.com wrote:

On Fri, Sep 28, 2012 at 1:47 PM, Dwight Hutto dwightdhu...@gmail.com wrote:

[ lots of screed that demonstrates that Dwight hasn't grokked the hacker 
culture ]

Don't hack, but could very well if necessary.


You couldn't hack your self out of a wet paper bag, and you're fooling noone. 
Sorry... buddy. You should go away now; You asked who is laughing at you the 
other day, and at that point you had the ability to salvage (or at least 
attempt to salvage) your reputation with a few people. You've pretty much blown 
that away at this point, so a belated answer to your question is everyone.


Dwight, have a read of these documents. They may help you to
understand how the python-list community operates, and perhaps more
so, why most of the regulars here think the way they do.

They have double digit I.Q.'s ?

Actually,

this may be of interest to quite a few people, so I'll post it
on-list.

Go right aheadbuddy.


http://catb.org/~esr/faqs/

ChrisA
--
http://mail.python.org/mailman/listinfo/python-list






--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Article on the future of Python

2012-09-27 Thread Littlefield, Tyler

On 9/27/2012 10:37 PM, Chris Angelico wrote:

On Fri, Sep 28, 2012 at 2:12 PM, Greg Donald gdon...@gmail.com wrote:

On Thu, Sep 27, 2012 at 10:37 PM, Wayne Werner wa...@waynewerner.com wrote:

the only advice I can give on that is
just learn to use both.

I find there's little to lose in having experience with both.

Most every good web framework out there supports lots of different
databases through generic ORM layers.. so flipping back and forth to
see which database is better for your particular app and workload is
trivial.


I plan to do that, just so I have both. I've had the experience of mysql, so I 
guess postgresql is up next. I was just really curious why so many people 
prefered it. Perhaps off topic (actually really off topic), but if I were to 
dump my tables from mysql out into flat-files, does postgresql use the same 
basic structure? IIRC there's a sql98 standard or something like that.

 Learning both is good, if for no reason than that learning more tends
to be advantageous.

As Greg said in his other post, PGSQL is a completely open source
project. That's a significant point imho. Other points to consider:

* MySQL is designed for dynamic web sites, with lots of reading and
not too much writing. Its row and table locking system is pretty
rudimentary, and it's quite easy for performance to suffer really
badly if you don't think about it. But if your needs are simple, MySQL
is probably enough. PostgreSQL uses MVCC to avoid locks in many cases.
You can happily read from a row while it's being updated; you'll be
unaware of the update until it's committed.

* Postgres has solid support for advanced features like replication. I
don't know how good MySQL's replication is, never tried it. Can't say.
This might be completely insignificant.

* The default MySQL engine, MyISAM, doesn't do proper transaction
logging etc. InnoDB is better for this, but the internal tables (where
your database *structure* is maintained) are MyISAM. This imposes a
definite risk.

You've lost me here; there are two different engines. From what I got from your 
post, innoDB just essentially wraps MyIsam with some pretty (or apparently not 
so pretty) locking stuff to help with transactions?

 * Both engines have good support in popular languages, including
(dragging this back on topic, kicking and screaming) Python.

For further details, poke around on the web; I'm sure you'll find
plenty of good blog posts etc. But as for me and my house, we will
have Postgres serve us.


Will do, thanks for all the feedback (both on and off list). I'm not a huge 
database person; I've never really played around with much of it since there's 
a lot more to understand and I can't just mess with it like any other language, 
so I was unaware of a lot, and still am in terms of performance. I've obviously 
seen a ton of blog posts talking about the differences, but they tend to dive 
into the inner mechanics, something which I don't understand all that well.
PS: Someone mentioned my messages were not indented properly; is this still the 
case? Apparently thunderbird allows ctrl+right bracket to outdent, so I assume 
my messages should be the outer ones with others being indented farther.

 ChrisA



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Article on the future of Python

2012-09-26 Thread Littlefield, Tyler

On 9/26/2012 2:11 AM, Dwight Hutto wrote:

Well, we can all use american as a standard, or maybe you'd prefer to
borrow my Latin for Idiots handbook. But then again google has a
Universal Communicator going, so, does it matter?

Never in the field of human discussion has there been so much reason
for so many to plonk so few.


Plonk it if you want. Your homosexual ideologies have no effect on
me. Butt, back to the discussion, there are quite a few ways to
encode, as well as translate code.


You remind me of a little kid. When anything doesn't go your way, we 
revert to homosexual comments (who said anything about homosexual 
anyway), and you keep bringing up this whole nut hair deal. I think it's 
you leaning that way buddy, especially since most of us on here are guys.



Plonk it in your mouth, and let the nut hairs tickle your throat.



Take your trash somewhere else. You've provided nothing in terms of good 
feedback or responses, and I doubt you will provide more than insults.

PS: Anyone know if rantingrik had relatives? ;)



ChrisA
--
http://mail.python.org/mailman/listinfo/python-list






--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: new-style class or old-style class?

2012-09-25 Thread Littlefield, Tyler

On 9/25/2012 8:44 AM, Jayden wrote:

In learning Python, I found there are two types of classes? Which one are 
widely used in new Python code? Is the new-style much better than old-style? 
Thanks!!



Perhaps this is useful:
http://docs.python.org/reference/datamodel.html
It's 3.3 I think.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


google api and oauth2

2012-09-25 Thread Littlefield, Tyler

Hello all:
I've been trying  to figure out the oauth2client part of google's api, 
and I am really confused.
It shows a flow, and even with the client flow, you need a redirect uri. 
This isn't important because I just want to get both an access and 
refresh token.
Has anyone had any experience with this? Is it  easier to use a more 
developed oauth2 library to handle this? If so, can anyone make any 
suggestions?


If I understand everything correctly, it doesn't matter what library I 
would use to work with the oauth2 protocol, so I could break out of this 
workflow thing that looks like it's more designed for web apps.
Finally, they caution you about being careful about your client id and 
your client secret; is  there much in the way of obviscation or 
something I can do to keep this secret?


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: google api and oauth2

2012-09-25 Thread Littlefield, Tyler

On 9/25/2012 2:05 PM, Demian Brecht wrote:
This is a shameless plug, but if you want a much easier to understand 
method of accessing protected resources via OAuth2, I have a 55 LOC 
client implementation with docs and examples 
here:https://github.com/demianbrecht/sanction (Google is one of the 
tested providers with an access example).




No complaints from me if it works. Honestly I was a bit discouraged at 
Google's decent lack of documentation and the quality of the code.


Are you trying to access resources client side (through Javascript) or 
server side? Either way, the redirect URI *is* important. The first 
step is to have your user authorize your application using Google's 
authorization page. As one of the query parameters, you must specify 
the redirect URI (which must match those registered through Google's 
app console).


I'm trying to access it through a desktop Python application, which made 
me really confused. There was something else that talked about returning 
the tokens in a different way, but it talked about returning them in the 
title of the webpage, and since I'd be spawning a browser to request 
authorization, I'd have to write something that would pull the window 
information and then parse out the token from the title, which doesn't 
sound to stable.


Once the user has authorized your application, they're redirected back 
to your site (via the specified redirect URI), with a code attached 
as a query param. Once you get that code, you must exchange that with 
Google's token endpoint to retrieve the access and refresh tokens.


Awesome. I could theoretically just create a webpage on my server to 
redirect people to with the query, but I'm still not quite sure how I'd 
retrieve that from the desktop application.


No, it doesn't matter which library you use. Google's (imho) is overly 
verbose and difficult to grok (especially for someone new to either 
OAuth 2.0 or Python, or both). The client ID doesn't need to be kept 
private, but the secret does. You should *never* put this anywhere 
that can be read publicly.


I plan on storing them both in variables. It's not going to be the best 
solution, but I plan to use python -O to create pyo files, which from 
what I understand are harder to decompile, and it'll be in a py2exe 
executable. Still not to hard to get at, but it's not right there either.



On Tue, Sep 25, 2012 at 12:04 PM, Littlefield, Tyler 
ty...@tysdomain.com mailto:ty...@tysdomain.com wrote:


Hello all:
I've been trying  to figure out the oauth2client part of google's
api, and I am really confused.
It shows a flow, and even with the client flow, you need a
redirect uri. This isn't important because I just want to get both
an access and refresh token.
Has anyone had any experience with this? Is it  easier to use a
more developed oauth2 library to handle this? If so, can anyone
make any suggestions?

If I understand everything correctly, it doesn't matter what
library I would use to work with the oauth2 protocol, so I could
break out of this workflow thing that looks like it's more
designed for web apps.
Finally, they caution you about being careful about your client id
and your client secret; is  there much in the way of obviscation
or something I can do to keep this secret?

-- 
Take care,

Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a
fool; he that dares not reason is a slave.

-- 
http://mail.python.org/mailman/listinfo/python-list






--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: request for another code review

2012-09-24 Thread Littlefield, Tyler

On 9/23/2012 9:48 PM, alex23 wrote:

On Sep 23, 6:14 am, Littlefield, Tyler ty...@tysdomain.com wrote:

I've gotten a bit farther into my python mud, and wanted to request
another code review for style and the like.

Are you familiar with codereview.stackexchange.com ?



I actually wasn't, thanks!



(This isn't to dissuade you from posting such requests here, just to
help increase the chance of eyeballs on your code.)



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: request for another code review

2012-09-24 Thread Littlefield, Tyler

On 9/23/2012 9:48 PM, alex23 wrote:

On Sep 23, 6:14 am, Littlefield, Tyler ty...@tysdomain.com wrote:

I've gotten a bit farther into my python mud, and wanted to request
another code review for style and the like.

Are you familiar with codereview.stackexchange.com ?



I actually wasn't, thanks!



(This isn't to dissuade you from posting such requests here, just to
help increase the chance of eyeballs on your code.)



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: keeping information about players around

2012-09-24 Thread Littlefield, Tyler

On 9/24/2012 3:14 PM, Dwight Hutto wrote:

I have yet another design question.
In my mud, zones are basically objects that manage a collection of rooms;
For example, a town would be it's own zone.
It holds information like maxRooms, the list of rooms as well as some other
data like player owners and access flags.
The access flags basically is a list holding the uid of a player, as well as
a bitarray of permissions on that zone. For example, a player might have the
ability to edit a zone, but not create rooms.
So I have a couple of questions based on this:
First, how viable would it be to keep a sort of player database around with
stats and that?



Well, what are the main items you need to retain for the player to
return to the game?



All of their contents are stored, which right now is done through Pickle. The 
stats is something different, as like I said, I don't want to unpickle an 
object every time I for example look at a zone and see what players have 
permissions on it.


Also, If this is a browser app I'd go with phpmyadmin, and MySQL If a 
tkinter/wxpython/etc app, then maybe sqlite.


PHPMyAdmin? Might I ask why? This is a mud, so it's all command based, 
so that's not even a question, but I'm kind of curious how PHPMyAdmin 
factors in there. It's a database creation tool from all I've ever seen 
of it, to define tables. Also, using it requires that I have it up on 
some server or another, and I'd really rather avoid that if I can.



It could contain the player's level, as well as other information like their
access (player, admin, builder etc), and then when someone does a whois on
the player I don't have to load that player up just to get data about them.
How would I keep the information updated? When I delete a player, I could
just delete the entry from the database by uid.
Second, would it be viable to have both the name and the uid stored in the
dictionary? Then I could look up by either of those?


Why would you use a dictionary, when it's DB manipulation you're after?



It is? I don't remember mentioning database anything in my thread. Unless I 
missed it, I mentioned pickle once or twice. But either way, I'd use a 
dictionary to keep a copy of {uid:object} for objects and {uid:player} for 
players. Makes lookup by uid pretty easy, as well as for any loaded objects.



Also, I have a couple more general-purpose questions relating to the mud.
When I load a zone, a list of rooms get stored on the zone, as well as
world. I thought it might make sense to store references to objects located
somewhere else but also on the world in WeakValueDictionaries to save
memory. It prevents them from being kept around (and thus having to be
deleted from the world when they lose their life), but also (I hope) will
save memory. Is a weakref going to be less expensive than a full reference?

For any case, you're going to have a DB field with a value, so it
doesn't look like a high value memory cost in the DB.


Second, I want to set up scripting so that you can script events for rooms
and npcs. For example, I plan to make some type of event system, so that
each type of object gets their own events. For example, when a player walks
into a room, they could trigger some sort of trap that would poison them.
This leads to a question though: I can store scripting on objects or in
separate files, but how is that generally associated and executed?

Well, the event doesn't need to be stored unless there is a necessity
to store the event, but if it's poisoned, then it's just a life
penalty, then no need to store the event, just the score loss.



I was asking about scripting the rooms, more than storing it. I need to have 
python code somewhere, somehow that attaches to the onEnter event in a room and 
subtracts hp from the player. Obviously you want that to be object specific and 
not have that script on everything.



Finally, I just want to make sure I'm doing things right. When I store data,
I just pickle it all, then load it back up again. My world object has an
attribute defined on it called picklevars, which is basically a list of
variables to pickle, and my __getstate__ just returns a dictionary of those.
All other objects are left as-is for now. Zones, (the entire zone and all
it's rooms) get pickled, as well as players and then the world object for
persistence. Is this the suggested way of doing things? I'll also pickle the
HelpManager object, which will basically contain a list of helpfiles that

I might suggest you take a look at the Blender Game Engine(python API)
at this point, unless you're just liking doing it the hard way to gain
experience(just like I have).



That's cool I guess, but I'm not taking your road and doing it the hard way for 
experience. The setup is more of a game engine, but beyond that, I don't think 
I need everything i get from a game library, especially since IIRC, Blender is 
mainly 3d focused?


Design the DB, and let the scene render what needs to be rendered, or 
list 

Re: For Counter Variable

2012-09-24 Thread Littlefield, Tyler

On 9/24/2012 6:25 PM, Dwight Hutto wrote:

To highlight the vast gulf between what you think you are and what you
actually produce.

I produce working code, and if it works, then I don't just think...I know.

Working code != good code. Just an observation. Also, I've noticed a vast differences 
between someone who can explain their answers as Alix has done on multiple threads you've 
replied to in the last 5 minutes, and someone who cobbles something together with 
your variable isn't being shown right because there's no self.a, which 
actually really makes no sense at all. Just my $0.02.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Who's laughing at my responses, and who's not?

2012-09-24 Thread Littlefield, Tyler

On 9/24/2012 10:43 PM, Dwight Hutto wrote:

It sounds pretentious, but over the past several days, I've been
slammed on every post almost. All because of an argument over me not
posting a little context in a conversation, that seemed short and
chatty.

I was just wondering, if it's just them, or if it's my netiquette.

I think you'd have a leg to stand on here if you didn't start cursing at anyone 
who got on your wrong side. It wasn't really an issue until you threw that
up. Granted you did take your cursing off list finally, but you still continued 
(and as of about 2 hours ago) continue to post trash like you did in response
to Alix's message. If you want to argue something, by all means argue. But 
there's no need to resort to comments like you've made.


-- Take care, Ty http://tds-solutions.net The aspen project: a barebones 
light-weight mud engine: http://code.google.com/p/aspenmud He that will 
not reason is a bigot; he that cannot reason is a fool; he that dares 
not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: List Problem

2012-09-23 Thread Littlefield, Tyler

On 9/23/2012 3:44 PM, jimbo1qaz wrote:

On Sunday, September 23, 2012 2:31:48 PM UTC-7, jimbo1qaz wrote:

I have a nested list. Whenever I make a copy of the list, changes in one affect 
the other, even when I use list(orig) or even copy the sublists one by one. I 
have to manually copy each cell over for it to work.

Link to broken code: http://jimbopy.pastebay.net/1090401

No, actually that's the OK code. http://jimbopy.pastebay.net/1090494 is the 
broken one.


I've not been following this thread fully, but why not just use 
x=list(y) to copy the list?
The issue is that when you assign i=[1,2,3] and then j = i, j is just a 
reference to i, which is why you change either and the other changes.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


keeping information about players around

2012-09-23 Thread Littlefield, Tyler

ytHello all:
I've asked for a couple code reviews lately on a mud I've been working 
on, to kind of help me with ideas and a better design.


I have yet another design question.
In my mud, zones are basically objects that manage a collection of 
rooms; For example, a town would be it's own zone.
It holds information like maxRooms, the list of rooms as well as some 
other data like player owners and access flags.
The access flags basically is a list holding the uid of a player, as 
well as a bitarray of permissions on that zone. For example, a player 
might have the ability to edit a zone, but not create rooms.

So I have a couple of questions based on this:
First, how viable would it be to keep a sort of player database around 
with stats and that?
It could contain the player's level, as well as other information like 
their access (player, admin, builder etc), and then when someone does a 
whois on the player I don't have to load that player up just to get data 
about them. How would I keep the information updated? When I delete a 
player, I could just delete the entry from the database by uid.
Second, would it be viable to have both the name and the uid stored in 
the dictionary? Then I could look up by either of those?


Also, I have a couple more general-purpose questions relating to the mud.
When I load a zone, a list of rooms get stored on the zone, as well as 
world. I thought it might make sense to store references to objects 
located somewhere else but also on the world in WeakValueDictionaries to 
save memory. It prevents them from being kept around (and thus having to 
be deleted from the world when they lose their life), but also (I hope) 
will save memory. Is a weakref going to be less expensive than a full 
reference?
Second, I want to set up scripting so that you can script events for 
rooms and npcs. For example, I plan to make some type of event system, 
so that each type of object gets their own events. For example, when a 
player walks into a room, they could trigger some sort of trap that 
would poison them. This leads to a question though: I can store 
scripting on objects or in separate files, but how is that generally 
associated and executed?
Finally, I just want to make sure I'm doing things right. When I store 
data, I just pickle it all, then load it back up again. My world object 
has an attribute defined on it called picklevars, which is basically a 
list of variables to pickle, and my __getstate__ just returns a 
dictionary of those. All other objects are left as-is for now. Zones, 
(the entire zone and all it's rooms) get pickled, as well as players and 
then the world object for persistence. Is this the suggested way of 
doing things? I'll also pickle the HelpManager object, which will 
basically contain a list of helpfiles that can be accessed, along with 
their contents.

Thanks, and appologies for all the questions.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


request for another code review

2012-09-22 Thread Littlefield, Tyler

Hello all:
I've gotten a bit farther into my python mud, and wanted to request 
another code review for style and the like. Mainly I'm concerned about 
player.py, world.py and components and other ways to handle what I'm 
trying to do.
I didn't run pychecker just yet, so there are probably a ton of syntax 
errors; my problem was that world was importing room, and room imported 
world for functionality and that made things a mess.
Ideas and suggestions for code cleanup and cleaner ways to do things 
would be appreciated.

git clone https://code.google.com/p/pymud/
Thanks,

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


using uwsgi to get flask going

2012-09-19 Thread Littlefield, Tyler

Hello all:
This is my first shot with UWSGI and Python on Nginx, and I'm getting 
kind of confused.

My uwsgi init script looks like:
#!/bin/sh
#/etc/init.d/uwsgi
### BEGIN INIT INFO
# Provides: uwsgi
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
### END INIT INFO
PID=/var/run/uwsgi/uwsgi.pid
SOCKET=/var/run/uwsgi/uwsgi.sock
DAEMON=/usr/local/bin/uwsgi
LOGFILE=/var/log/uwsgi.log
ARGS=--master --socket $SOCKET -d --workers 4 --pidfile $PID --vacuum 
--max-requests 400 --gid uwsgi --uid uwsgi --logto2 $LOGFILE --chdir2 
/opt/nginx/html/falcon -w app:app

case $1 in
start)
echo Starting uwsgi
touch $SOCKET
touch $LOGFILE
chown uwsgi:uwsgi $LOGFILE
chmod 660 $LOGFILE
chown -R www-data:uwsgi $SOCKET
chmod 660 $SOCKET
start-stop-daemon -p $PID --start --exec $DAEMON -- $ARGS
;;
stop)
echo Stopping uwsgi.
start-stop-daemon --signal INT -p $PID --stop $DAEMON -- $ARGS
;;
restart)
echo Stopping uwsgi.
start-stop-daemon --signal INT -p $PID --stop $DAEMON -- $ARGS
echo Starting uwsgi
start-stop-daemon -p $PID --start --exec $DAEMON -- $ARGS
;;
*)
echo Usage: /etc/init.d/uwsgi stop|stop|restart.
exit 1
;;
esac
I'm trying to chdir so I can use app:app (ap.py is the script, app is 
the application in app.py). From what I understand, uwsgi just spawns a 
Python process and runs app.py to handle requests? It doesn't spawn a 
process per instance? How easy would it be to force it to use PyPy for 
example?

Also my nginx config:
server {
server_name www.dev.tds-solutions.net dev.tds-solutions.net;
listen   80;
access_log  logs/dev.access.log;

location / {
root   html/falcon;
index  index.html index.htm;
try_files $uri @uwsgi;
}

location ~ /\.ht {
   deny  all;
}

location @uwsgi {
include /opt/nginx/conf/uwsgi_params;
uwsgi_pass unix:/var/run/uwsgi/uwsgi.sock;
}
}
anyone see anything wrong? Any info would be greatly appreciated.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: VPS For Python

2012-08-26 Thread Littlefield, Tyler

On 8/26/2012 1:41 AM, coldfire wrote:

I will really appreciate if someone type the address of any of the following 
for use with python
1Webhost
2Shell Account
3VPS


I love Linode, it's amazing and you get decent resources for a decent 
price. If you sign up, I'd really appreciate it if you used my code. 
They also have a realloygood library at linode.com/library to show you 
how to set a lot of stuff up.

http://www.linode.com/?r=7858d151c1ea11c0ce9a1398865b1cc7ad28c19f


I am really new to all this Got web server and shell account but unable to 
figure out how to use it or deploy the Code,
My problem is that I m using lot of third party Library which are mostly not 
supported or I don't know How to make it RUN over Internet



--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: modeling complex data with sqlalchemy

2012-08-26 Thread Littlefield, Tyler

Hello:
Thanks for the info. IT doesn't really model the data I wanted. The 
contents was easy enough, I'm just going to set up a 1:n relationship on 
the Entity to the actual player. But for components, it's a bit different.
Each component inherits the actual Component class, and has a number of 
attributes on it. I can't just put it in it's own. So I was going to set 
up a table per component and then just store an id and another id for 
what holds it. But my problem is modeling it. I also need the inherited 
data from Component. Would there be a way to do this? I could have:

id, name, component_id
and then SA could use the name as the table's name, and the id as the id 
of the component in the other table.

How would I set this up with SA? Is it a good idea to go this route?

On 8/25/2012 5:53 PM, Dennis Lee Bieber wrote:

On Sat, 25 Aug 2012 14:47:35 -0600, Littlefield, Tyler
ty...@tysdomain.com declaimed the following in
gmane.comp.python.general:


Hello all:
I had a quick question.
In my game, I have an is-a setup, where all objects contain data like an
id for sqlalchemy, a name, a description and a list of contents.

Well, a list of contents comes down to a table of items with a
foreign key to the item containing them...

create table objects
(
ID  integer auto-increment primary key,
namevarchar(?),
description varchar(?)
)

1, Wulfraed, something or other
2, Bag of Holding, whatever
3, Sword, some cutting comments
4, Treasure Chest, everyone wants one

create table holdings
(
ID  integer auto-increment primary key,
holder  integer foreign key objects(ID),
holding integer foreign key objects(ID)
)

1, 1, 2
2, 1, 3
3, 2, 4


In order to add functionality to an object, you add components. So for
example, a player would have the Player and Living component associated

create table attribute_types
(
ID  integer auto-increment primary key,
namevarchar(?),
typechar(?),#or an enumeration if supported by the RDBM
#and SQLAlchemy
)

1, Player, Boolean
2, Living, Boolean
3, EdgeWeapon, Boolean
4, Damage, DieRoll
5, ContainerSize, Integer
6, Class, Text

create table attributes
(
ID  integer auto-increment primary key,
describes   integer foreign key objects(ID),
attribute   integer foreign key attribute_types(ID),
value BLOB(?)
)

1, 1, 1, blob(True)
2, 1, 2, blob(True)
3, 3, 3, blob(True)
4, 3, 4, blob(1D8 + 4)
5, 2, 5, blob(-1)   #-1 being unlimited, bag of holding
6, 4, 5, blob(6)#treasure chest holds 6 units of objects
7, 1, 6, blob(Ranger)


Now, you could add another layer of indirection -- a table of
pre-defined object /types/ (different types of containers, swords, other
weapons), and have each instance (the ones shown in objects) refer to
the object type table, and the object type table is what the object
attributes refers to.





--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


modeling complex data with sqlalchemy

2012-08-25 Thread Littlefield, Tyler

Hello all:
I had a quick question.
In my game, I have an is-a setup, where all objects contain data like an 
id for sqlalchemy, a name, a description and a list of contents.
In order to add functionality to an object, you add components. So for 
example, a player would have the Player and Living component associated 
with the basic object. It's sort of a way to give myself a way to add 
functionality without having a lot of multiple inheritance.
This creates a problem for me though, since it looks like each component 
would have it's own table. How would you go about modeling the 1:n 
relationship between entity and each component?
Also, I'm going to have a location property on the object, which is 
basically it's location (a reference to another Entity), or None if it 
has no parent. How would you set that up in SA so that location gets 
translated to an ID and then translated back to the required object?
Might there be another easier way to model all this data? It looks like 
this database could get rather large, extremely quickly.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: code review

2012-07-03 Thread Littlefield, Tyler

On 7/3/2012 10:55 PM, Simon Cropper wrote:

Some questions to Tyler Littlefield, who started this thread.

Q1 -- Did you get any constructive feedback on your code?


I did get some, which I appreciated. someone mentioned using PyLint. 
From reading, I found it was really really pedantic, so I used PyFlakes 
instead.


Q2 -- Did you feel that the process of submitting your code for review 
met your expectation?


There wasn't much more to review, so yes. The info I got was helpful and 
farther than it was before I started.


Q3 -- Would you recommend others doing this either on this forum or 
other fora?


It appears to me - third party watching the ongoing dialog - that the 
tread has gone right off topic (some time ago) and someone should 
really start a new thread under a new title/subject. Most of what I 
have read does not appear to be discussing your code or how you could 
improve your code.


I basically just stopped after a while. It got into a my language is 
better than your language, so I didn't see much constructive info. I've 
started reading from the bottom though, where it looks like it's back, 
and I do appreciate the rest of the info given, as well. Thanks again 
for the feedback.


Following the last few posts, I was wondering whether some other 
off-list dialog is going on or whether I am missing something.





--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: code review

2012-06-29 Thread Littlefield, Tyler

On 6/29/2012 2:14 AM, Serhiy Storchaka wrote:

The project page is at:
http://code.google.com/p/pymud
Any information is greatly appreciated.


Do you mean snip
No, I mean http://code.google.com/p/pymud




--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


Re: code review

2012-06-29 Thread Littlefield, Tyler


On 6/29/2012 1:31 AM, Steven D'Aprano wrote:

On Thu, 28 Jun 2012 20:58:15 -0700, alex23 wrote:


On Jun 29, 12:57 pm, Littlefield, Tyler ty...@tysdomain.com wrote:

I was curious if someone wouldn't mind poking at some code. The project
page is at:http://code.google.com/p/pymud Any information is greatly
appreciated.

I couldn't find any actual code at that site, the git repository is
currently empty.


OOPS, sorry. Apparently I'm not as good with git as I thought. 
Everything's in the repo now.


--
http://mail.python.org/mailman/listinfo/python-list


Re: code review

2012-06-29 Thread Littlefield, Tyler
I am no expert but from what have picked up so far from x import is 
frowned upon in most cases also this section in main strikes me as a bit 
odd and convoluted w = world() serv = server(client) w.server = serv 
serv.world = w I think you are cross referencing classes  would be 
better to investigate inheritance.


From what I understand and how I've always employed it, inheritance is 
ment when you wish to give a class characteristics of another class. All 
I'm doing here is setting the world and server classes on each other, so 
they can call one another. This probably isn't needed in case of 
serv.server = w, but for sure the other way around.


--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


code review

2012-06-28 Thread Littlefield, Tyler

Hello all:
I was curious if someone wouldn't mind poking at some code.
I have an idea for a game I want to write (and if this works I want to 
use this as a framework for another project), but I'd like to make sure 
I'm doing things correctly/there's not a better way to do things. My 
concern is I'm going to get way far into this, then realize I totally 
broke something. So, if someone wouldn't mind taking a peek I'd 
appreciate it. My concerns are:

1) style/cleanlyness: does everything look ok?
2) Workability: is there a better way to do what is there?
3) Speed: am I doing something that could be improved? I don't want to 
spend a ton of time looking for non-existent bottlenecks and trying to 
improve on them, but if I'm doing something that's bad, I'd like to fix it.


The project page is at:
http://code.google.com/p/pymud
Any information is greatly appreciated.

--
Take care,
Ty
http://tds-solutions.net
The aspen project: a barebones light-weight mud engine:
http://code.google.com/p/aspenmud
He that will not reason is a bigot; he that cannot reason is a fool; he that 
dares not reason is a slave.

--
http://mail.python.org/mailman/listinfo/python-list


keeping twisted and wxPython in sync

2012-02-07 Thread Littlefield, Tyler

Hello all:
I have a couple questions. First, is there a way to know if connectTCP 
failed? I am writing a client with Twisted and would like to be able to 
notify the user if they couldn't connect.
Second, I set the protocol on my factory after a connection has been 
made. So when I send my user and password, that is when I connect. Is 
there a way to handle waiting for the connection to complete?


--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


python logging module:a quick question

2011-12-26 Thread Littlefield, Tyler

Hello all:
I have a basic server I am working on, and wanted some input with an 
error I'm getting.

I am initializing the logger like so:
if __name__ == __main__:
  observer = log.PythonLoggingObserver()
  observer.start()
  logging.basicConfig(filename='logs/server.log', level=logging.DEBUG, 
format='%(asctime)s [%(levelname)s] %(module)s:%(funcname)s:%(lineno)d 
%(message)s')

  logger = logging.getLogger()
  logger.addHandler(logging.handlers.TimedRotatingFileHandler)
...
I get the following error:
  File 
/home/gserver/alpine/lib/python2.7/site-packages/twisted/internet/protoc

ol.py, line 52, in doStart
log.msg(Starting factory %r % self)
--- exception caught here ---
  File 
/home/gserver/alpine/lib/python2.7/site-packages/twisted/python/log.py,

 line 284, in msg
self.observers[i](actualEventDict)
  File 
/home/gserver/alpine/lib/python2.7/site-packages/twisted/python/log.py,

 line 532, in emit
self.logger.log(level, text)
  File /usr/local/lib/python2.7/logging/__init__.py, line 1195, in log
self._log(level, msg, args, **kwargs)
  File /usr/local/lib/python2.7/logging/__init__.py, line 1250, in _log
self.handle(record)
  File /usr/local/lib/python2.7/logging/__init__.py, line 1260, in handle
self.callHandlers(record)
  File /usr/local/lib/python2.7/logging/__init__.py, line 1299, in 
callHandler

s
if record.levelno = hdlr.level:
exceptions.AttributeError: type object 'TimedRotatingFileHandler' has no 
attribute 'level'
I'm also curious how this rotating handler works. Will it just log to a 
file per day for a week, then start rotating those out with newer ones? 
Can I change the interval?


--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


using twisted as a client-server hybrid

2011-12-14 Thread Littlefield, Tyler

Hello all:
I have a quick question--I am working on a project where a system will 
connect to me to get commands. The idea is to make the server the 
client, used for dispatching commands, so  I'm trying to find a way 
that I can set it up to listen, but poll stdin somehow for input. Is 
this a possibility?


--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Re: How to structure packages

2011-09-10 Thread Littlefield, Tyler

On 9/10/2011 4:11 AM, Nobody wrote:

On Fri, 09 Sep 2011 11:37:44 +1000, Chris Angelico wrote:


The Java compiler also acts as a make program. If it doesn't find
a .class file for a needed class, it will search for the corresponding
.java file and compile that. So to compile a complex program, you only
need to compile the top-level file (e.g. HelloWorld.java), and it will
compile everything which is required. No Makefile is needed, as the
relationship between classes, object files and source files is fixed.


If that's the entire benefit, then I think this is a rather hefty
price to pay for the elimination of a makefile.

It also eliminates the need for TAGS files, browser database (PDB) files,
etc. Once you know the class name, all of the filenames follow from that.

I suspect that the one-to-one correspondence between classes and .class
files is mostly technical (e.g. Java's security model). The one-to-one
correspondence between class files and source files could probably be
relaxed, but at the expense of complicating the IDE and toolchain.

I never saw it as a problem, given that Java is fundamentally class-based:
there are no global variables or functions, only classes.

Sure there are no global variables, but having one class per file is one 
of the big things I hate about Java. Sure it keeps things organized, but 
that's a bit to much for me.




--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Re: test if a subclass inherits a superclass method

2011-09-10 Thread Littlefield, Tyler

On 9/10/2011 5:58 AM, Kayode Odeyemi wrote:

Hello,

I'm testing Python's class abstractness and inheritance. Since 
interface doesn't exist, I will
like to test how to have access to a superclass method from a subclass 
without necessary

invoking or overriding the superclass method in its subclass.

 class Equipment(object):
... def fault():
... return fault
...
 Equipment().__class__
class '__main__.Equipment'
 class Vehicle(Equipment):
...  # Find out here if Vehicle has access to fault

I want to know whether Vehicle has access to Equipment's fault() method.
Just want to know if it's there(that a vehicle can also develop a fault).

I know I can override it, but I want to know if I can use it directly 
without overriding it.


Perhaps this helps:
http://stackoverflow.com/questions/610883/how-to-know-if-an-object-has-an-attribute-in-python


--
Odeyemi 'Kayode O.
http://www.sinati.com. t: @charyorde




--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: using python in web applications

2011-09-10 Thread Littlefield, Tyler

On 9/9/2011 10:19 PM, Ben Finney wrote:

Littlefield, Tylerty...@tysdomain.com  writes:


I'm curious if there are some good solutions for using Python in web
applications.

Start with:

URL:http://docs.python.org/howto/webservers.html#frameworks
URL:http://wiki.python.org/moin/WebFrameworks



Awesome, will do, thanks.


and try your criteria against what you find there.




--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Re: using python in web applications

2011-09-10 Thread Littlefield, Tyler

On 9/10/2011 5:35 PM, Laurent wrote:

[troll]
For a serious web based MMO you'd rather stick to low level and forget about 
bloated Object Relational Mapping java-like layered kind of frameworks that are 
made for Rapid Applications Development, not for efficiency.
[/troll]

I replied to that one off list I guess, but I figured Django was way 
more overhead than I wanted, doesn't really fit with solving the speed 
issue.



Eve Online, a well known MMORPG was developped with stackless python : 
http://highscalability.com/eve-online-architecture

You mentioned nginx so I can tell you I personally use Linux + nginx + mongodb 
(pymongo) + Python 3 version of cherrypy (with Mako templates) and it's working 
fine after some tuning.


Awesome, thanks. I'm new to this, so some of that flew over my head, but 
I'll take a look at all of them. I'm not sure of the relevance of 
stackless in this case; I was looking into PyPy, but I'm not really sure 
whether that can be connected with nginx. I guess I could just write the 
web server in Python and use it from that point.


--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Re: what's the command for (cd ..) in python

2011-09-09 Thread Littlefield, Tyler

On 9/9/2011 6:07 AM, kaustubh joshi wrote:

Hello friends,
 How do we carry out the command *cd ..* in 
python?



os.chdir, like so:
 os.getcwd()
'/home/tyler'
 os.chdir(../)
 os.getcwd()
'/home'
So you could do something like: os.chdir(../foo)


My problem is :
I have a set of folders say m=1,2,3,4. In each of these folders, I 
have subfolders with common name say m_5,m_6,m_7,m_8. In each of these 
subfolder, there is a file which I have edit.
  1
   23  
   4
 |
|  |  
|
 
--
  1_5, 1_6, 1_7, 1_8   2_5 
,2_6, 2_7, 2_8   3_5, 3_6, 3_7, 3_8  4_5, 4_6, 4_7, 4_8


That is how I designed it

When I run my script, it follows the route 1 --- 1_5- do the 
edit job in the file. Now it need to change the  subfolder from 1_5 to 
1_6, which is not happening.


I created the folders using variable like m for folder taking values 
1,2,3,4 and m_n for subfolders with n=5,6,7,8.


I am trying with os.chdir(path), but stuck with how to use m_n in it.

What I am missing at the moment is something that do the job cd .. does.

Any help


Karan






--

Take care,
Ty
Web: http://tds-solutions.net

Sent from my toaster.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Installing 2.6 on Win 7

2011-09-09 Thread Littlefield, Tyler

On 9/9/2011 2:04 PM, ray wrote:

I have not found binaries for this install.  The page
http://www.python.org/download/windows/
takes me to
http://www.python.org/download/releases/
which goes to
http://www.python.org/download/releases/2.6.7/
Here are Gzip and Bzip tar balls.  The readme files describe linux
builds and the content seems to match.

Are there win binaries or source files?


http://www.python.org/getit/releases/2.6.6/
has a release for windows x86 and x64


ray



--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


using python in web applications

2011-09-09 Thread Littlefield, Tyler

Hello all:
I'm curious if there are some good solutions for using Python in web 
applications.


I'm not feeling particularly masochistic, so I do not want to develop 
this project in PHP; essentially I'm looking to build a web-based MMO. I 
know that you can use nginx with Python with servers like Flask, but I'm 
not really sure how well all of those work. Since this will be a game, I 
can expect quite a few users; I've already got quite a lot of interest. 
I don't much care for PHP, but the thing that can be said for it is it's 
pretty quick. How does Python compare? Are there some solutions (I was 
told about PyPy today) that would be quicker that I could still use for 
the web app? I'm also curious what databases are suggested? I've always 
done most of my work in MYSql, but from what I understand postgresql is 
becoming more popular to.


Thanks all for the input,

--

Take care,
Ty
Web: http://tds-solutions.net
The Aspen project: a light-weight barebones mud engine
http://code.google.com/p/aspenmud

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Re: How to structure packages

2011-09-07 Thread Littlefield, Tyler

On 9/7/2011 9:56 AM, bclark76 wrote:

I'm learning python, and was playing with structuring packages.

Basically I want to have a package called mypackage that defines a
number of classes and functions.


so I create:

mypackage
 __init__.py
 myfunc.py
 MyClass.py


my __init__.py is blank.

my MyClass.py looks like:

import blah

class MyClass(blahblah):
 blah
 blah
 blah


then I have a run.py that looks like

from mypackage import MyClass


x = MyClass()


This doesn't work because MyClass is mypackage.MyClass.MyClass.
There's this MyClass module 'in the way'.


You can use the __init__.py to promote that class up. so:
from myclass import myclass
So that means that myclass will just be in mypackage.myclass, and thus 
your from mypackage import myclass would work perfectly. I'm not sure if 
this is how you're supposed to do it, but it works.



I'm trying to follow the rule that every file defines only one class.
I could define MyClass in __init__.py, but then what if I wanted to
define more classes in the mypackage package? My one class per file
rule goes out the window.

Is this rule wrongheaded, or is there another way to do this?


Thanks.




--

Take care,
Ty
Web: http://tds-solutions.net

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


Looking for open-source Python projects to help out with

2011-09-06 Thread Littlefield, Tyler

Hello:
I've got a bit of time on my hands, so I'm curious what sorts of 
projects there are that people needs help with. I'd like to choose 
something that doesn't have a ton of red tape, but is stable, which is 
why I ask here instead of just Googling open source projects. My main 
interests lie in accessibility, Utilities and security.


--

Take care,
~Ty
Web: http://tds-solutions.net

Sent from my toaster.

--
http://mail.python.org/mailman/listinfo/python-list


parsing packets

2011-07-10 Thread Littlefield, Tyler

Hello all:
I'm working on a server that will need to parse packets sent from a 
client, and construct it's own packets.
The setup is something like this: the first two bytes is the type of the 
packet.
So, lets say we have a packet set to connect. There are two types of 
connect packet: a auth packet and a connect packet.
The connect packet then has two bytes with the type, another byte that 
notes that it is a connect packet, and 4 bytes that contains the version 
of the client.
The auth packet has the two bytes that tells what packet it is, one byte 
denoting that it is an auth packet, then the username, a NULL character, 
and a password and a NULL character.


With all of this said, I'm kind of curious how I would 1) parse out 
something like this (I am using twisted, so it'll just be passed to my 
Receive function), and how I get the length of the packet with multiple 
NULL values. I'm also looking to build a packet and send it back out, is 
there something that will allow me to designate two bytes, set 
individual bits, then put it altogether in a packet to be sent out?


--

Take care,
Ty
my website:
http://tds-solutions.net
my blog:
http://tds-solutions.net/blog
skype: st8amnd127
My programs don't have bugs; they're randomly added features!

--
http://mail.python.org/mailman/listinfo/python-list


Dynamic URL shortening

2011-06-14 Thread Littlefield, Tyler

Hello all:
I started working on a project with someone else quite recently, and he 
has a request. The project requires an URL shortener, and he would like 
it to be dynamic for both users and developers. Apparently some 
applications on the mac allow for the user to input some data on a URL 
shortener and use that specific service to shorten URLS. So I'm curious 
if anyone has had any experience with this in python/can recommend a 
library to look at.


Secondly, my requirement to make this dynamic for developers. The way I 
did this was to use a metaclass that the base URLShortener will inherit, 
which will add itself to a shortener registry. This works well enough, 
and all I really need to do is something like:

shortener = factory.getShortener(bitly)
url = shortener.shorten(http://google.com;)
How viable is this solution? It seems like it's nice enough, are there 
other approaches to handling something like this?


--

Take care,
Ty
my website:
http://tds-solutions.net
my blog:
http://tds-solutions.net/blog
skype: st8amnd127
My programs don't have bugs; they're randomly added features!

--
http://mail.python.org/mailman/listinfo/python-list


Re: [Python-Dev] [RELEASED] Python 3.2.1 rc 1

2011-05-18 Thread Littlefield, Tyler

For an extensive list of changes and features in the 3.2 line, see
http://docs.python.org/3.2/whatsnew/3.2.html
Might I presume that clicking the link would show the required changes?

--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-18 Thread Littlefield, Tyler

might be secure as long as attackers cannot, say:
You forgot UFOs.
Anyway, again, thanks to everyone for the advice, this is good reading. 
Incidentally, I don't know to much about security. I know about rate 
limiting and dos attacks, as well as some others, but I think there's a 
lot more that I don't know--can someone kind of aim me in the right 
direction for some of this? I want to be able to take techniques, break 
my server and then fix it so that can't be done before I head to public 
with this.


--
http://mail.python.org/mailman/listinfo/python-list


Re: FW: help please

2011-05-17 Thread Littlefield, Tyler
Not to be pedantic or anything, and I may not be able to help 
regardless, but it looks like your space key is fixed, and I don't 
really care to pick through and try to play hangman with your message.

On 5/17/2011 3:43 AM, hamed azarkeshb wrote:



From: hamed3...@hotmail.com
To: webmas...@python.org
Subject: help please
Date: Tue, 17 May 2011 13:20:22 +0430

hi dear
inwant to useautomation with catiaby python,but i dont know,h*ow do we 
can creat catsafearrayvariant in python?*

please help me.i need urhelp by one example.
thank u forany thing



--

Take care,
Ty
my website:
http://tds-solutions.net
my blog:
http://tds-solutions.net/blog
skype: st8amnd127
“Programmers are in a race with the Universe to create bigger and better 
idiot-proof programs, while the Universe is trying to create bigger and better
idiots.  So far the Universe is winning.”
“If Java had true garbage collection, most programs would delete themselves 
upon execution.”

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: FW: help please

2011-05-17 Thread Littlefield, Tyler

I can't remember exactly in which release 'perfect English skills' were
added to Python runtime requirements, could you please refresh my memory?
the one that requires people use the space key and check over their 
messages before they hit the enter key. Not so bad a request, I don't 
think. I am using a screen reader--it takes the text and puts it in 
speech. It uses the space as it's separation between words, as we all 
do, so wheniseetextlikethis it just jumbles it altogether. The point was 
to request that the OP try to formulate a good request, or get the space 
key fixed, both of which would've helped.

--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-16 Thread Littlefield, Tyler

Write your game for the web.
Write is as a SaaS (Software as a Service) - even if it's free and 
open source.
I understood you loud and clear. And that makes a lot of assumptions on 
my game and the design. I don't really care to host this over the web. I 
want a
centralized server that would perform the logic, where I can offload the 
playing of sounds (through a soundpack that's already installed) to the 
client-side.
Not only that, but a lot of web technologies that would be used for this 
wouldn't really work, as I am doing this for the blind; Flash as well as 
a lot

of the popular setups are not very accessible.

--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-16 Thread Littlefield, Tyler

Hello:
I wanted to make the client in python, and the server possibly, though 
I'm not really sure on that. I was not worried about the code for the 
server being stolen, as much as I was worried about people tinkering 
with the client code for added advantages. Most of the logic can be 
handled by the server to prevent a lot of this, but there are still ways 
people could give themselves advantages by altering the client.


--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-16 Thread Littlefield, Tyler

Funny you should mention this now
I don't go around parading the info, until I have to.
Yes I agree Flash is not very accessible (never has been).
Web Standards web apps and such however are quite
accessible!
If I was making a browser-based game, yes. As I'm not though...

Anyway, thanks to everyone else who answered this thread. I've not done 
much like this besides muds, and all the logic is on the server there, I 
think I will build the client in python, open source it for people to 
fix/add to if they want and make sure to keep the server as secure as it 
can be.

--
http://mail.python.org/mailman/listinfo/python-list


obviscating python code for distribution

2011-05-15 Thread Littlefield, Tyler

Hello all:
I have been considering writing a couple of programs in Python, but I 
don't want to distribute the code along with them. So I'm curious of a 
couple things.
First, does there exist a cross-platform library for playing audio 
files, whose license I would not be violating if I do this?

Second, would I be violating the twisted, wxpython licenses by doing this?
Finally, is there a good way to accomplish this? I know that I can make 
.pyc files, but those can be disassembled very very easily with the 
disassembler and shipping these still means that the person needs the 
modules that are used. Is there another way to go about this?


--

Take care,
Ty
my website:
http://tds-solutions.net
my blog:
http://tds-solutions.net/blog
skype: st8amnd127
“Programmers are in a race with the Universe to create bigger and better 
idiot-proof programs, while the Universe is trying to create bigger and better
idiots.  So far the Universe is winning.”
“If Java had true garbage collection, most programs would delete themselves 
upon execution.”

--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-15 Thread Littlefield, Tyler
I'm putting lots of work into this. I would rather not have some script 
kiddy dig through it, yank out chunks and do whatever he wants. I just 
want to distribute the program as-is, not distribute it and leave it 
open to being hacked.

On 5/15/2011 9:29 PM, Ben Finney wrote:

Littlefield, Tylerty...@tysdomain.com  writes:


I have been considering writing a couple of programs in Python, but I
don't want to distribute the code along with them.

This topic has been raised many times before, and there is a response
which is now common but may sound harsh:

What is it you think you would gain by obfuscating the code, and why is
that worthwhile? What evidence do you have that code obfuscation would
achieve that?


Finally, is there a good way to accomplish this? I know that I can
make .pyc files, but those can be disassembled very very easily with
the disassembler and shipping these still means that the person needs
the modules that are used. Is there another way to go about this?

Not really, no. You would be best served by critically examining the
requirement to obfuscate the code at all.




--

Take care,
Ty
my website:
http://tds-solutions.net
my blog:
http://tds-solutions.net/blog
skype: st8amnd127
“Programmers are in a race with the Universe to create bigger and better 
idiot-proof programs, while the Universe is trying to create bigger and better
idiots.  So far the Universe is winning.”
“If Java had true garbage collection, most programs would delete themselves 
upon execution.”

--
http://mail.python.org/mailman/listinfo/python-list


Re: obviscating python code for distribution

2011-05-15 Thread Littlefield, Tyler

Hello:
Thanks all for your information and ideas. I like the idea of open 
source; I have a fairly large (or large, by my standards anyway) project 
that I am working on that is open source.


Here's kind of what I want to prevent. I want to write a multi-player 
online game; everyone will essentually end up connecting to my server to 
play the game. I don't really like the idea of security through 
obscurity, but I wanted to prevent a couple of problems.
1) First I want to prevent people from hacking at the code, then using 
my server as a test for their new setups. I do not want someone to gain 
some extra advantage just by editing the code.

Is there some other solution to this, short of closed-source?
Thanks,

--
http://mail.python.org/mailman/listinfo/python-list


Re: De-tupleizing a list

2011-04-25 Thread Littlefield, Tyler

What is the most Pythonic way to loop through the list returning a
list like this?:

here's how I'd do it:
 i
[(1, 'a'), (2, 'b'), (3, 'c')]
 for item in i:
... a+=list(item)
...
...
 a
[1, 'a', 2, 'b', 3, 'c']

--
http://mail.python.org/mailman/listinfo/python-list


Re: Egos, heartlessness, and limitations

2011-04-15 Thread Littlefield, Tyler

And who pissed in Guido's punch bowl anyway? Why is he such an elitist
now? Why can he not come over once and a while and rub shoulders with
http://www.youtube.com/watch?v=FMEe7JqBgvg
--
http://mail.python.org/mailman/listinfo/python-list


Re: Egos, heartlessness, and limitations

2011-04-13 Thread Littlefield, Tyler

RR:
I do have to ask, before I feed the troll, where the hell is your 
spellchecker? And you were talking about people being lazy? The irony is 
killing me.


Now, you've been told you can fork Idol if you so choose, and you've 
been told to write up information on how you want to replace TKInter as 
well as start the ball rolling in that direction. Why don't you return 
under your rock, or do one of these rather than insulting everyone here 
and demanding people sit down with -you- to formulate a battle plan?

--
http://mail.python.org/mailman/listinfo/python-list


Re: Egos, heartlessness, and limitations

2011-04-13 Thread Littlefield, Tyler

We all have jobs James, and we still find the time to help others out
Whose we? Can you point me to a thread within the last 6 months where 
you actually -helped- someone?

I think he has evolved into a complete jerk (if you ask me)
1) We didn't ask you.
2) If he's been under this rock of his and won't come out to rub 
shoulders with the little people, as you say, how do you know he's a jerk?

but most importantly, learn to laugh at yourself.
we all laugh at you, even if you don't, so no worries.
--
http://mail.python.org/mailman/listinfo/python-list


Re: fighting game made with python

2011-04-07 Thread Littlefield, Tyler

yep, if somebody moves one more thing. there's going to be a fight...
bitch in your own thread, please? We've already heard you complain 
plenty, no need to take it to other threads too.

On 4/7/2011 9:10 AM, harrismh777 wrote:

neil harper wrote:

is there any fighting games(street fighter, mortal kombat, etc) made in
python?



yep, if somebody moves one more thing. there's going to be a fight...


:)





--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: fighting game made with python

2011-04-07 Thread Littlefield, Tyler

Python would b ea bad choice for most of any fighting game, but
could see use as a configuration or internal scripting engine.
Python's objects are rather large, which sort of makes for some slow 
work. Maybe a configuration setup, but Lua and Angelscript are better 
suited to high-end games where scripting is required because of their 
smaller footprint.

--
http://mail.python.org/mailman/listinfo/python-list


Re: Sending pictures using sockets

2011-04-06 Thread Littlefield, Tyler

On 4/6/2011 4:58 PM, craf wrote:

Hello.

I'm testing the sockets in Python and I've seen the way in which
works to send string. My question is if anyone knows where
can find some information on how to send pictures through
Sockets. I use Python 2.7 and have read the information regarding
Sockets of the Python website, but I can not begin.
Pictures are just like strings; grab it, send it in binary and you are set.
Any help is welcome

Greetings.

Cristian AbarzĂşa F




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: using python to post data to a form

2011-04-04 Thread Littlefield, Tyler

Sending POST data can be done as follows (I'm changing bar=foo to
Thanks for this, and the links.

On 4/4/2011 12:24 AM, Chris Rebert wrote:

On Sun, Apr 3, 2011 at 10:36 PM, Littlefield, Tylerty...@tysdomain.com  wrote:

Hello:
I have some data that needs to be fed through a html form to get validated
and processed and the like. How can I use python to send data through that
form, given a specific url? the form says it uses post, but Im not really
sure what the difference is.

They're different HTTP request methods:
http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods

The key upshot in this case is that GET requests place the parameters
in the URL itself, whereas POST requests place them in the body of the
request.


would it just be:
http://mysite.com/bla.php?foo=barbar=foo?

No, that would be using GET.


If so, how do I do that with python?

Sending POST data can be done as follows (I'm changing bar=foo to
bar=qux for greater clarity):

from urllib import urlopen, urlencode

form_data = {'foo' : 'bar', 'bar' : 'qux'}
encoded_data = urlencode(form_data)
try:
 # 2nd argument to urlopen() is the POST data to send, if any
 f = urlopen('http://mysite.com/bla.php', encoded_data)
 result = f.read()
finally:
 f.close()

Relevant docs:
http://docs.python.org/library/urllib.html

Cheers,
Chris
--
http://blog.rebertia.com




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


using python to post data to a form

2011-04-03 Thread Littlefield, Tyler

Hello:
I have some data that needs to be fed through a html form to get 
validated and processed and the like. How can I use python to send data 
through that form, given a specific url? the form says it uses post, but 
Im not really sure what the difference is. would it just be:

http://mysite.com/bla.php?foo=barbar=foo?
If so, how do I do that with python?

--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: Writing to a file

2011-03-25 Thread Littlefield, Tyler

with open(test_absname, 'w') as test:
what's the difference in that and test = ...? I can see why you 
mentioned the os.path for cross-platform, but I don't understand why 
someone would use with over =.

On 3/25/2011 7:11 PM, eryksun () wrote:

On Friday, March 25, 2011 11:07:19 AM UTC-4, jyou...@kc.rr.com wrote:

f = open('~/Desktop/test.txt', 'w')
f.write('testing 1... 2... 3...')
f.close()

Consider using with to automatically close the file and os.path for 
cross-platform compatibility:

 import os.path
 user_home = os.path.expanduser('~')
 test_absname = os.path.join(user_home, 'Desktop', 'test.txt')

 with open(test_absname, 'w') as test:
 test.write('testing 1... 2... 3...')




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: Pyserial

2011-03-20 Thread Littlefield, Tyler

The windows msi install fails saying there is no python install found
in the registry. Is there a workaround for this? Can I edit the
registry and manually enter the information?
I've came to realize that the 64-bit version of python does not work 
with 32-bit modules in terms of the installer because the key doesn't 
exist. Just grab the 32-bit python and you're set with modules.


--
http://mail.python.org/mailman/listinfo/python-list


Re: What do you use with Python for GUI programming and why?

2011-03-10 Thread Littlefield, Tyler

Is there a push to one toolkit or the other?


TKInter from what I understand comes with Python already. There is also 
PYGui and WXPython; it really depends on what you want and what you like 
the best.


--
http://mail.python.org/mailman/listinfo/python-list


Re: How Translate This PHP

2011-03-06 Thread Littlefield, Tyler

How do I translate this PHP code?
if($ok){
echo returnValue=1;
}else{
echo returnValue=0;
}
print(return value = +str(ok));
--
http://mail.python.org/mailman/listinfo/python-list


Re: Absolutely Insane Problem with Gmail

2011-03-05 Thread Littlefield, Tyler

ourEmail = '
myemaila...@gmail.com'

ourEmail = '
q...@xxx.com'

You redefine this twice. You also don't define a variable down lower.
#  to_address = ourEmail,
  from_address = ourEmail,
  to_address = emailText,
I could be wrong, but emailText isn't defined. Perhaps a better variable 
naming setup would help you some. so: in short, set up a to_address and 
from_address,

populate those however you need to, then change the variable names.
--
http://mail.python.org/mailman/listinfo/python-list


Re: having both dynamic and static variables

2011-03-05 Thread Littlefield, Tyler

   It's worth having some syntax for constants.  I'd suggest
using let:
let PI = 3.1415926535897932384626433832795028841971693993751
in to many languages, let is just a setter. why not just const pye = 3.14...

--
http://mail.python.org/mailman/listinfo/python-list


Re: Problems of Symbol Congestion in Computer Languages

2011-02-17 Thread Littlefield, Tyler

My intention was to educate him on the pitfalls of multiplicity.
O. that's what you call that long-winded nonsense? Education? You must 
live in America. Can I hazard a guess that your universal language might 
be english? Has it not ever occured to you that people take pride in 
their language? It is part of their culture. And yet you rant on about 
selfishness?

On 2/17/2011 8:29 PM, rantingrick wrote:

On Feb 17, 8:40 pm, Cthuncthun_...@qmail.net.au  wrote:


What does your aversion to cultural diversity have to do with Lisp,
rantingrick? Gee, I do hope you're not a racist, rantingrick.

Why must language be constantly connected-at-the-hip to cultural
diversity? People have this irrational fear that if we create a single
universal language then *somehow* freedom have been violated.

You *do* understand that language is just a means of communication,
correct? And i would say a very inefficient means. However, until
telekinesis becomes common-place the only way us humans have to
communicate is through a fancy set of grunts and groans. Since that is
the current state of our communication thus far, would it not be
beneficial that at least we share a common world wide mapping of this
noise making?

sarcasm  Hey, wait, i have an idea... maybe some of us should drive
on the right side of the road and some on the left. This way we can be
unique (psst: SELFISH) from one geographic location on the earth to
another geographic location on the earth. Surely this multiplicity
would not cause any problems? Because, heck, selfishness is so much
more important than anyones personal safety anyway/sarcasm

Do you see how this morphs into a foolish consistency?


. Now don't misunderstand all of this as meaning multiplicity is bad,
. because i am not suggesting any such thing! On the contrary,
. multiplicity is VERY important in emerging problem domains. Before
. such a domain is understood by the collective unconscience we need
. options (multiplicity!) from which to choose from. However, once a
. collective understanding is reached we must reign in the
. multiplicity or it will become yet another millstone around our
. evolutionary necks, slowing our evolution.

Classic illogic. Evolution depends upon diversity as grist for the mill
of selection, rantingrick. A genetically homogeneous population cannot
undergo allele frequency shifts, rantingrock.

Oh, maybe you missed this paragraph:

  . Now don't misunderstand all of this as meaning multiplicity is
bad,
  . because i am not suggesting any such thing! On the contrary,
  . multiplicity is VERY important in emerging problem domains. Before
  . such a domain is understood by the collective unconscience we need
  . options (multiplicity!) from which to choose from. However, once a
  . collective understanding is reached we must reign in the
  . multiplicity or it will become yet another millstone around our
  . evolutionary necks, slowing our evolution.

Or maybe this one:

. I think in theory the idea of using Unicode chars is good, however
in
. reality the implementation would be a nightmare!  A wise man once
. said: The road to hell is paved in good intentions. ;-)

Or this one:

. If we consider all the boundaries that exist between current
. (programming) languages (syntax, IDE's, paradigms, etc) then we
will
. realize that adding *more* symbols does not help, no, it actually
. hinders! And Since Unicode is just a hodgepodge encoding of many
. regional (natural) languages --of which we have too many already in
. this world!


What does any of that have to do with Lisp, rantingrick?

The topic is *ahem*... Problems of Symbol Congestion in Computer
Languages... of which i think is not only a lisp issue but an issue
of any language. (see my comments about selfishness for insight)


And you omitted the #1 most serious objection to Xah's proposal,
rantingrick, which is that to implement it would require unrealistic
things such as replacing every 101-key keyboard with 10001-key keyboards
and training everyone to use them. Xah would have us all replace our
workstations with machines that resemble pipe organs, rantingrick, or
perhaps the cockpits of the three surviving Space Shuttles. No doubt
they'd be enormously expensive, as well as much more difficult to learn
to use, rantingrick.

Yes, if you'll read my entire post then you'll clearly see that i
disagree with Mr Lee on using Unicode chars in source code. My
intention was to educate him on the pitfalls of multiplicity.





--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: Call to Update All Tutorials to Python3.x Standards.

2011-02-13 Thread Littlefield, Tyler
Hahaha. You've got a new one every week, don't you. What happened to the 
demand to evolve idol into the future or whatever the BS you were 
parroting was? So we're on TKInter being fixed/replaced, (which you 
haven't worked with the steps people gave you), Idol being forked and 
redone, (again which you haven't done), and now you want to drag people 
kicking and screaming into tutorial updates. Well, at least you 
provide for some amusement, anyway. What's the bet RR will be demanding 
GV step up? And I'm sure he's got the silent majority, yet again.


--
http://mail.python.org/mailman/listinfo/python-list


Re: Call to Update All Tutorials to Python3.x Standards.

2011-02-13 Thread Littlefield, Tyler

However *we* are going to move forward with or
without you.
In other words: We in RR's book means RR and this silent majority that 
has pitched in so much work to back his last call to move forward, that 
we're now boggling in awe at a new Idol. And moving forward means 
posting lots of trash, (he calls this speaking up), reverting to insults 
when people don't back him in his crusade to move us forward, (he calls 
this vision and pursuasion), then hoping that it all holds up. When a 
solution is posed, he goes quiet, (this again I guess is called 
evolution), until he can find something else to complain about, and the 
last complaints are left by the wayside.


--
http://mail.python.org/mailman/listinfo/python-list


Re: Easy function, please help.

2011-02-09 Thread Littlefield, Tyler
Uh oh, I think we found RR's evil twin: another python to the modern day 
visionary.

Example 1 is not explicit enough. Too much guessing is required by the
reader!
if list is empty, bla. if not, bla. it's not all that hard, and there's 
no guessing that needs to take place, honest.


--
http://mail.python.org/mailman/listinfo/python-list


Re: Are Small Dogs Good with Kids?

2011-02-07 Thread Littlefield, Tyler
Not only does this have -nothing- to do with python, but you reproduced 
the spam yet again by quoting it... seriously?

--
http://mail.python.org/mailman/listinfo/python-list


Re: IDLE: A cornicopia of mediocrity and obfuscation.

2011-02-01 Thread Littlefield, Tyler

See now you are offering truth in your argument! Keep this up and i'll
move you over to the occasional flamers group. Then over time, if you
can demonstrate an ability to engage in lively discussion based on
facts and not emotion, i *may* even move you into the moderates group.
O no, whatever shall I do. I apparently have no hope of being moved into 
the moderates group because I don't agree with him. I hope everyone will 
excuse me now, I must dash off to slit  my wrists in a tub of warm water 
and listen to Free Bird, while morning over the fact that I may *never* 
get moved into RR's moderate's group. Tisk tisk.


--
http://mail.python.org/mailman/listinfo/python-list


Re: IDLE: A cornicopia of mediocrity and obfuscation.

2011-01-31 Thread Littlefield, Tyler

However we cannot blame the current maintainer...

You seem to still not know who -we- is. rewrite your message using I in place 
of we, and you'll be on the right track.

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-30 Thread Littlefield, Tyler
Are you a representative voice for all the screen reader users? (Even 
though

most of them use JAWS that you don't seem to like)
Newsflash: I didn't say I didn't like Jaws, and I'm using Jaws -right 
now-. I don't like jaws and see a lot of future for NVDA as it is both 
free and open source. I like that a lot more than paying what, $1300 or 
so for a program that will allow me to use the computer? Plus the 
obligatory $260 for two updates so I can update once every four months, 
regardless of whether or not I want to update. If you want to rant and 
scream about accessibility, yell at the people charging an arm and a leg 
to make things accessible.

On 1/28/2011 1:33 AM, Octavian Rasnita wrote:

From: Littlefield, Tyler ty...@tysdomain.com

* Disclaimer: You are stupid if you think this is true. But seriously,
Octavian makes it REALLY hard to continue caring about something that I
actually cared about before and thought was important.


When I told about what the community of the blind from my country 
cares, or
what I care, the others told me that that is not important. I am sure 
that
won't say the same thing to your post in which you also say about what 
you

care, just because you have the same opinions like them.


People like Octavian do that. Sadly, it is one of the things holding the
blind community back. I hope that with my arguments (for those that 
didn't

just toss everything related to this thread), I have been able to get
people to see a little differently and not consider Octavian as the 
voice

for us all.



Who are those us all?
Are you a representative voice for all the screen reader users? (Even 
though

most of them use JAWS that you don't seem to like)
Or do you agree with the associations of the blind in your country do 
when
they fight with different companies because they make discrimination 
by not

offering accessible products?
Or you are more representative than those associations?

Octavian




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: Useing the processor clock, or get time in Femptoseconds

2011-01-30 Thread Littlefield, Tyler
If you are on windows, you can use high-resolution timers. What you are 
trying is physically impossible though: lets say you have a processor 
that runs at 2.5 GHz. that's 2.5 billion cycles per second, give or take 
a few. So, the lowest you can go is nanoseconds. You're trying to time 
like 10x the processor's actual speed, and you're not going to get 
timing that good. so, lower your bar a bit; the highest you will get is 
nanoseconds with high-res timers. (I'm not sure what the equivalent of 
this is on *nix, or whether or not python supports it on either 
platform. I think you'll end up making a DLL call, though I could be wrong).


--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-28 Thread Littlefield, Tyler
Exactly what I said. They are doing the same mistake as I did 20 years 
ago.
and are still making now... Lack of English and grammar isn't the 
problem...


--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-28 Thread Littlefield, Tyler

Yes but his silence speaks louder than words. He is saying  While i
won't defend Tkinter publicly, i won't promote any others as well.
That's the best translation I've ever heard: taking silence and 
diverting it into your own meaning for what you want it to mean.

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-28 Thread Littlefield, Tyler

Man look at the state of Tkinter. Look at the bugs and mediocre code i
exposed. Are you going to set there with a strait face and tell me
many people are using Tkinter. Come on Kevin, be realistic!
You also uncovered bugs in WX (remember those segfaults, RR)?
On 1/28/2011 1:35 PM, rantingrick wrote:

On Jan 28, 10:16 am, Kevin Walzerk...@codebykevin.com  wrote:

On 1/28/11 9:18 AM, rantingrick wrote:


Everyone on this list knows that Kevin and myself are the *only*
people who know how to wield Tkinter past some simple utility GUI's.

I strongly disagree with this statement.

Whether you agree or disagree is irrelevant. The fact remains. And if
there are others, why do we never hear from them? Why do they never
help noobs when Tkinter questions come up? I guess they are the
silent majority right?

Man look at the state of Tkinter. Look at the bugs and mediocre code i
exposed. Are you going to set there with a strait face and tell me
many people are using Tkinter. Come on Kevin, be realistic!



--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler
but what's wrong is that Python promotes a GUI which is not accessible 
by including it as a default GUI.
You seem to have overlooked this multiple times and instead decided to 
shove words in my mouth and continue on your line of selfishness which 
is justified
apparently now by the fact that you are ESL. I have mentioned many, many 
times that we work to make TKInter accessible; it is something I plan to 
start
working on this weekend. But rather than that, you seem to still want to 
switch gui libraries in python, which I might add, will not happen over 
night,
nor will the accessibilifying (my new word) TKInter. It's a process that 
will take time. So, I ask since you keep jumping around this point, what 
is wrong

with fixing TKInter?


--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler

Eloq is an add-on, but it does support it.
but only eSpeak which sounds horrible
That's your personal preference. Plenty use and like ESpeak.
it doesn't have a scripting language ready to use as JAWS and Window 
Eyes do,
Scripting is done in Python, (no, not some native scripting language), 
and are done as modules. You write your script in python, and off you 
go. Problem

solved.
it doesn't offer the possibility of reading with the mouse cursor as 
JAWS does with its so called JAWS cursor,
It's called flat review. Googling this term brings up a key reference at 
like the third or fourth result down.

it offers a poor accessibility in many applications
Very very very wrong. It works better with some apps than Jaws does, and 
about as good in many others. NVDA (like all other readers, and any 
program for

that matter) still does have problems, but none that you mentioned.
and many other issues.
-other- says that there were issues to begin with; the only issue here 
is you promoting the most widely used screen reader, because it's what 
you use,
and you not being able to use google and do your homework before you 
start talking about products you know nothing of.


--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler
We are talking about accessibility here. Are you saying that Tkinter 
can be recommended from the perspective of accessibility?
See my comment about shoving words in people's mouths; I did not hint, 
nor did I come near saying that in that message.

On 1/27/2011 1:17 AM, Octavian Rasnita wrote:

From: Littlefield, Tyler ty...@tysdomain.com

I don't want to convince anyone, but I just want to inform the others
and let them know if they are doing something not recommended.
not recommended by -you-, which is different than by a community or 
the subset of people you are attempting to represent. furthermore, 
your attidude is that of comply to my definition of what is needed, 
or you are selfish, rude, mean, cruel, etc. Then when that fails, 
you try cramming words in people's mouth to make them feel like they 
kick puppies, and to bring everyone else to this same conclusion.



We are talking about accessibility here. Are you saying that Tkinter 
can be recommended from the perspective of accessibility?


Octavian




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler

Tyler, you are a Linux and Mac user and you search with Google and try to
explain how many things you know about NVDA, but it is obviously that 
what JAWS insert rest of bullshit here
1) Because you, your crew, and your group on a specific forum doesn't 
like ESpeak doesn't disqualify an entire reader. The eloquence fixes are 
illegal to be packaged with NVDA, so you -need- to get a separate patch, 
yes. That doesn't mean it can't be done. As to me being a Linux and Mac 
user, that doesn't disqualify what I'm telling you either, because 
unlike your limitations, I don't just decide to only use one reader. I 
use Linux, Mac, and windows (windows more than both, actually). Yes, I'm 
giving you what I got from googling, because that's my way of telling 
you to do your homework before you start ranting about a reader you 
clearly know nothing of. The fact that it appears on google says a lot. 
At least to me, maybe it's something you haven't been able to comprehend.

On 1/27/2011 10:22 AM, Octavian Rasnita wrote:

From: Littlefield, Tylerty...@tysdomain.com

It doesn't support a good voice synthesizer like Eloquence or IBM Via

voice
Eloq is an add-on, but it does support it.

If you are saying this, it means that you haven't used it for a long time, or 
you just heard about it by searching on the web. Eloq is supported, but only as 
an unofficial hack because the NVDA developers pretend that it is illegally to 
offer support for Eloquence. They said that Nuance ask them to remove that 
support from NVDA, and as a consequence, the support for Eloquence was removed 
and it is harder to find the NVDA Eloquence driver from unofficial sources (and 
that unofficial support is not the same under all versions of NVDA...)


but only eSpeak which sounds horrible

That's your personal preference. Plenty use and like ESpeak.

That's my personal preference and the preference of all the blind people I know 
in my country with only one or two exceptions. (If you'd know Romanian, I could 
give you the address of a forum to ask there if you don't believe me.)
And note that Eloquence doesn't support my native language, but eSpeak does it, 
however they still don't like eSpeak. Why do you think we don't like it? 
Because it is so good?


it doesn't have a scripting language ready to use as JAWS and Window

Eyes do,
Scripting is done in Python, (no, not some native scripting language),
and are done as modules. You write your script in python, and off you
go. Problem solved.

Have you done such a script for NVDA?
I've created a sample script in Python that uses the COM interface and I have asked on the NVDA 
mailing list and on NVDA-dev mailing list if I can use it, but NVDA doesn't offer that feature yet. 
And I was saying that NVDA doesn't have a scripting language ready to use. The 
scripting language can be Python, but it should accept a scripting code, easy to install with a 
copy/paste, not an NVDA patch. That means ready to use.

  it doesn't offer the possibility of reading with the mouse cursor as
JAWS does with its so called JAWS cursor,
It's called flat review. Googling this term brings up a key reference at
like the third or fourth result down.

Tyler, you are a Linux and Mac user and you search with Google and try to 
explain how many things you know about NVDA, but it is obviously that what JAWS 
can offer NVDA can't. That flat review can be used to read some things from the 
screen, and they say that it might also show the coordinates  of the objects, 
however unlike JAWS, it can't show the coordinates of each character on the 
screen, and this is important by someone who is totally blind for checking the 
positions of different text elements on a web page, or in a desktop app. But 
NVDA can't be used for that.


the only issue here is you promoting the most widely used screen reader, 
because it's what

you use,
and you not being able to use google and do your homework before you
start talking about products you know nothing of.

Tyler, the other list members sustain you because you are also against changing 
something in order to improve the accessibility and just promise that you will 
make Tk accessible, and I am sure they won't say anything about your atitude, 
but your atitude really sucks because it is obviously that you don't know many 
things about NVDA, and you haven't tried it, you even show that you don't care 
about the most used OS, you use Mac and Linux, but keep telling me that I don't 
know about it although I am an NVDA user for a long time.

And all these useless phrases are just for answering to your useless hijack of 
the discussion, because we are not talking about NVDA here, but about the lack 
of accessibility in Tk-based applications, and Tk is as inaccessible in JAWS as 
in NVDA, Window Eyes or other screen readers, so it doesn't matter what screen 
reader we use for testing that inaccessibility.

Octavian





--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler

* Disclaimer: You are stupid if you think this is true. But seriously,
Octavian makes it REALLY hard to continue caring about something that I
actually cared about before and thought was important.
People like Octavian do that. Sadly, it is one of the things holding the 
blind community back. I hope that with my arguments (for those that 
didn't just toss everything related to this thread), I have been able to 
get people to see a little differently and not consider Octavian as the 
voice for us all.


I am by no means the guru with accessibility, but I can boast having 
worked with all three platforms (and now IOS) that were mentioned in 
this thread in terms of accessibility. If someone would like to make an 
app more accessible or anything the like, I would love to give comments 
and feedback.


--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-27 Thread Littlefield, Tyler

Because healthy Linux users ARE NOT equal to handicapped people!
O? I bet I could run circles around RR in the shell, any day. Why are 
you trying to promote accessibility for a group of people you consider 
not equal to a group of healthy people?


--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-26 Thread Littlefield, Tyler

I don't know why you didn't say this before.
Comprehention, Octavian. I've made that point multiple times, but your 
to stuck on talking about how selfish people are.
The other part of the discussion is related to the accessibility and 
care for accessibility and that discussion is not nice at all, because 
it shows

how
selfish are most of the people and they consider this a virtue.
Selfish? We've had multiple people get interested, and I've had a couple 
of messages off-list about the accessibility, (probably so they wouldn't 
have
to deal with you). We've even had one person ask for a list of screen 
readers, (and I note you only gave him the one -you- use for the OS 
-you- use). There's
no selfishness, just your not knowing when to jump off the soapbox and 
stop parroting something just for the sake of complaining about it. It's 
been admitted that TKInter is not accessible, and discussion has even 
been made about fixing it. Yes, it will take a while, but nothing comes 
in over night. And getting WXPython to the point where it is usable in 
python 3, as has also been mentioned before by many people is going to 
take a lot of work, as well.


On 1/25/2011 11:25 PM, Octavian Rasnita wrote:
block quote
From: Emile van Sebille
em...@fenx.com
block quote
On 1/25/2011 3:33 PM rantingrick said...

block quote
Tkinter is old and in many ways insufficient for 21st century GUIs. We
need to decide what should come next. I believe wxPython is our best
hope. Wx may not be the best it can be, but it is the best we have at
this time.
block quote end

Then you should immediately volunteer to bring wxPython to python3 
compatibility -- as it is, it's not even close...


Start thinking about upping your game from ranting to doing.

Emile
block quote end

Hi Emile,

block quote
From my point of view this discussion is finished for the moment, because
block quote end
you are right, WxPython is not as fast developed as it needs, because 
Python 3 is not compatible with Python 2.
If no solution is found for this big problem, then yes, WxPython can't 
be included in the Python distribution because there is nothing that can 
be included.



I don't know why you didn't say this before.

The other part of the discussion is related to the accessibility and 
care for accessibility and that discussion is not nice at all, because 
it shows how

selfish are most of the people and they consider this a virtue.

Octavian

block quote end

--

Thanks,
Ty


--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-26 Thread Littlefield, Tyler

with JAWS because it is the most used screen reader.
Get off your me soapbox. Jaws is not the most used. NVDA is taking over, 
quite fast, and lots of people have totally switched to mac or Vinux 
because of the problems with Jaws. It's most used in corporate sektors 
still maybe, but lots of end-users are migrating to Window Eyes, NVDA or 
OSX because of the fact that it is both cheaper and NVDA is open source, 
not to mention free. Just because Jaws -was- most used and -you- use it, 
doesn't mean it still remains so.

On 1/26/2011 8:26 AM, Octavian Rasnita wrote:

From: Littlefield, Tylerty...@tysdomain.com

I don't know why you didn't say this before.

Comprehention, Octavian. I've made that point multiple times, but your
to stuck on talking about how selfish people are.

You didn't say that WxPython can't be used with Python 3. Have you said that?


The other part of the discussion is related to the accessibility and

care foraccessibility and that discussion is not nice at all, because
it shows how

selfish are most of the people and they consider this a virtue.

Selfish? We've had multiple people get interested,

I am not interested if the people are getting interested. I am interested to 
have a solution right now, and at least for Python 2, a solution is already 
available.


and I've had a couple
of messages off-list about the accessibility, (probably so they wouldn't
have to deal with you). We've even had one person ask for a list of
screen readers, (and I note you only gave him the one you use for the OS

For the majority of blind users it is less relevant if a GUI is accessible 
under Linux or Mac. I gave that example because a GUI should be first 
accessible with JAWS because it is the most used screen reader.

Octavian




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-26 Thread Littlefield, Tyler
It doesn't support a good voice synthesizer like Eloquence or IBM Via 
voice, but only eSpeak which sounds horrible, it doesn't have a 
scripting language
ready to use as JAWS and Window Eyes do, it doesn't offer the 
possibility of reading with the mouse cursor as JAWS does with its so 
called JAWS cursor,

it offers a poor accessibility in many applications and many other issues.


You are wrong, on all accounts.
On 1/26/2011 10:04 AM, Octavian Rasnita wrote:

From: Littlefield, Tylerty...@tysdomain.com

with JAWS because it is the most used screen reader.

Get off your me soapbox. Jaws is not the most used. NVDA is taking over,
quite fast, and lots of people have totally switched to mac or Vinux

Lots of people means an insignifiant percent of users compared with the percent 
of Windows users.
NVDA is mostly used as a second screen reader in case that something wrong 
happends with the first one.
It doesn't support a good voice synthesizer like Eloquence or IBM Via voice, 
but only eSpeak which sounds horrible, it doesn't have a scripting language 
ready to use as JAWS and Window Eyes do, it doesn't offer the possibility of 
reading with the mouse cursor as JAWS does with its so called JAWS cursor, it 
offers a poor accessibility in many applications and many other issues.


because of the problems with Jaws. It's most used in corporate sektors
still maybe, but lots of end-users are migrating to Window Eyes, NVDA or
OSX because of the fact that it is both cheaper and NVDA is open source,
not to mention free. Just because Jaws -was- most used and -you- use it,
doesn't mean it still remains so.


Window Eyes always was cheaper than JAWS, however it was never the most used 
screen reader because it also have its problems.
I don't understand why you care so much about what will *probably* happen in 
the future and don't care about the present.
An indian saying says that on the long term will be everything fine (because we 
will be all dead:)

But you are talking just to show how right you are. If you remember about our 
discussion, we were talking about how inaccessible is Tkinter, and well Tkinter 
has the  same inaccessibility level under Window Eyes and NVDA just like under 
JAWS, so I don't know why is it so important to name all those screen readers 
if someone wants to test Tkinter.
I thought that if someone wants to test how inaccessible is Tkinter, JAWS would 
be enough because Tkinter is also inaccessible for the other screen readers, 
and I thought that it would be normally to test the accessibility using the 
screen reader that offer the most features.

Octavian






--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-26 Thread Littlefield, Tyler

Stephen Strawman Hansen: If he only had a brain!
And you want -us- to take -you- seriously? Tell me, what did you 
accomplish with that insult? Beyond elevating your own ego and trolling 
some more, anyway.

On 1/26/2011 1:37 PM, rantingrick wrote:

On Jan 26, 2:07 pm, Stephen Hansenme+list/pyt...@ixokai.io  wrote:


And some people have absolutely no need-- no need at all-- for any sort
of GUI programming at all. This group is actually really, really big.

Stephen Strawman Hansen: If he only had a brain! :-)

That is the most obvious straw-man to date in this thread. What about
the large portion of folks who don't use all the datatypes (queue,
weakref, etc) or how about numeric and math modules (fractions,
decimal, etc) or how about data persistence, or Cryptograhic, or
curses! or, multimedia services, or, or.

You see NOT everyone uses everything in the stdlib and most use much
less than half. However we would be fools to claim batteries
included and NOT support GUI!



--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-26 Thread Littlefield, Tyler
I don't want to convince anyone, but I just want to inform the others 
and let them know if they are doing something not recommended.
not recommended by -you-, which is different than by a community or the 
subset of people you are attempting to represent. furthermore, your 
attidude is that of comply to my definition of what is needed, or you 
are selfish, rude, mean, cruel, etc. Then when that fails, you try 
cramming words in people's mouth to make them feel like they kick 
puppies, and to bring everyone else to this same conclusion.

On 1/26/2011 1:46 PM, Octavian Rasnita wrote:

From: geremy condradebat...@gmail.com

At least 40% of my coworkers do not speak English as their native
language. Your problem is not the language. Your problem is your
attitude.

The atitude considered nice is just duplicity for convincing others, and I 
don't like duplicity. I like to know exactly what the people think and I want 
them know what I think.
I don't want to convince anyone, but I just want to inform the others and let 
them know if they are doing something not recommended.

I agree, telling the people that they are doing something wrong, directly, 
without sugar, might be considered a bad atitude by those who prefer duplicity 
and nice words just for the sake of socializing, but is that atitude worst than 
of those who don't care about discriminatory practices?



But I don't condemn you for this, because many years ago when I was in
school I had the opinion that some foreign colleagues are a little stupid
just because they were not able to express very well the ideas which were
not very simple, and well, they were not stupid at all, but they didn't know
my language well enough and they probably would think the same thing about
me if we were speaking in Russian.

I don't have that problem.

Oh yes you do as well as many others and it is obvious because I have seen that 
some of you consider me to be very angry, but I am not angry nor nervous at all 
so there may be something else.
If I say that I don't like a certain country because it attacks other 
countries, it doesn't mean that I am nervous or angry. I am just expressing my 
opinions about that country.
About those who use Tkinter I can't even say that I don't like them or 
something like that, because it is very normal that most of Python programmers 
should prefer it, because it was promoted a long time by Python. What I said is 
that it is not OK that Python promoted and keeps promoting a GUI lib that 
creates discrimination, but I don't know where you have seen that anger.


Exactly what I said. They are doing the same mistake as I did 20 years ago.
By the way, can't you see any syntactic dissacords in my phrases? Haven't
you think that my English might not be as fluent to be able to express
everything I want to say very well?

As I mentioned earlier, you'll find I don't have a lot of pity for you in this.

I don't need your pitty, but I can see that you misunderstand me, thinking that 
I am angry, thinking that I want to force everyone to use a GUI lib, and I 
thought that my English may not be clear enough to make you understand what I 
want to say.


But not supporting accessibility because the programmer *doesn't want this*,
it is not a bug, but discrimination. Don't you agree with this?
And if Python would have been able to support accessibility it would have
mean that it promotes discrimination because it promotes the wrong tool, but
it seems that Python 3 doesn't have an accessible GUI lib for the moment, so
no, it is not discrimination (but Emile told us that there is no support for
WxPython in Python 3 just today, so I didn't know this and I already
wondered why nobody told about this real problem).

Keep in mind, I'm not saying this.

Saying what? I don't understand what you were not saying.


This is a sketch of your point of view and Tyler's point of view.

What has the phrase I told above with what Tyler said?
I said that if somebody can create accessible programs but doesn't *want* to do 
that, this generates discrimination.
Don't you agree with this?


Well, I think that everyone should understand why the programs must be
accessible and why everybody should care about all the users of an
application and that it is not normal to not care.

Ah! I think I see where you're going wrong. It *is* normal not to
care- not just about this, but about any given special interest other
than your own. You have to convince people to care, or they don't- and
you're not convincing, just yelling.

Where did I say that it is normal to not care about other things?
I have also agreed that it is important to have support for Python 3, that it 
is also important the commercial point of view, it is also important to have a 
GUI lib without bugs that generates errors, and you are again and again 
misunderstanding me thinking that I am yelling, even though I am writing all 
these things very calm.

And I am not trying to convince anyone. I mean, we are not in the 

Re: WxPython versus Tkinter.

2011-01-25 Thread Littlefield, Tyler

RR,
I do hate to break the news to you, but I am -blind-, which is why I am 
using a screen reader. So I'm not parking anywhere--the DMV refuses to 
give me a license for some odd reason. What was that post about IQ you 
made earlier?...

--
http://mail.python.org/mailman/listinfo/python-list


Re: WxPython versus Tkinter.

2011-01-25 Thread Littlefield, Tyler
Wow! I, I, I, I... is there a sentence that doesn't talk about your 
self interests?
It is clear you have been taking lessons from RR; the word I does not 
convey self interest, in fact, it is the best word suited to speaking of 
oppinions (which is all that these are), in the first person. Lets move 
on, shall we?
You haven't downloaded any inaccessible program made with Tkinter, you 
didn't have any problems, You can create an accessible program if you 
can't find
an accessible one, you care only to please the other for working with 
you and so on.
No. I said, I can find a program that is accessible, if I find one that 
isn't. Totally different from making one, and any user at all has said 
power. Granted, there are conditions where this doesn't work, but my 
idea of -fixing- TKInter would solve a lot of problems.
Don't you care that most programmers don't know about accessibility 
and they just don't create accessible programs not because they don't 
want, but because

they don't know about this thing?
Of course I do. Non accessibility hurts you, as much as me, as much as 
anyone else when I have to take time away to try to make a program 
accessible. But, here is the thing; I have suggested work on TKInter to 
make such programs accessible, and I am perfectly willing to 
participate, as much as time allows, in such work. You are trying to 
make me come across as some evil cruel person because I don't submit to 
hit them over the head with the hammer that is the ADA and force 
compliance, but rather I want to work with someone. At the end of the 
day, you lose, I win in general. People have made comments about the 
fact that all you did was parrot the evilness of TKInter to many 
threads, and now you've made comments on laws in existance that will 
help us. If you will note, no one even blinked at said laws. Now, the 
idea of fixing the problem (and not just switching libraries out of the 
STDLib, because as Ixokai already pointed out in another post, that 
won't happen), will get us much farther; whether or not Python, or 
anything else uses TKInter, it will be accessible, with some work put 
into talking to the community and I'll probably jump in the trenches 
myself and hammer out some code.

Retorical question... It is obviously that you don't care.
Nope. I, as a blind person obviously don't care. Which is why I've spent 
so much time trying to push the idea of fixing TKInter. what a horrible 
horrible person I am.
Ok, you don't care. There are very many like you. But do you think 
that this is the right atitude? To not care about the others at all but 
only about your selfish interests because the alternative is a loss of 
time?
A loss of time? Where. I am not a proponent of forcing a lib into the 
STDLib while said library currently has problems (RR's segfaults, I'm 
looking at you). I know and accept the fact that Python is not going 
to become unstable with a library, in the hopes that some day people 
will start using wx since it's just there and voila, everything will be 
peaches and cream for us screen-reader using folks.
Can't you see that this isn't normal? Can't you see that some people 
don't even believe you that you are blind but you still promote the 
non-accessible programs?
RR's non-belief of me being blind or otherwise was to help his own 
argument, not because I'm promoting anything.
But there could be an explanation for this too. You might look great 
in your gang if the other blind people you know are not able to use 
some programs but you are able to create your own which are accessible. 
You will appear really special.
Yep. I'm talking about fixing a library to be more accessible so I can 
look great in my gang of sighted people I try so hard to blend in 
with, by daring to use such words as watch.


You mentioned the millions of people that I may help by quoting 
accessibility laws at, and here I say, you over estimate your self 
importance. If I went into my school and started yelling about the ADA, 
I would possibly get somewhere, but they would end up doing the bear 
minimum in order to comply with such laws. As a result, I don't really 
get what I want, and someone walks away from the encounter with the idea 
that all the blind people are the same, which may be a problem for 
someone who wishes to get employed.


Now, on the other hand, if I were to walk into somewhere, say hey, this 
is really unaccessible, and this is how we can fix it, from my 
experience, 9 times out of ten it will get fixed. That other 10% is 
where the ADA and other such laws come in. Through this encounter, 
someone walks away with a lot more respect for me, and if something 
should come up later, I can generally go talk to them.


You have this pity me, I don't want to be a part of the sighted 
community, attitude, which will get you nowhere. If you limit yourself 
(by not doing such things as watching tv, or using phones with 
touchpads), that is -your- own fault, and no one elses. I say this 

Re: WxPython versus Tkinter.

2011-01-25 Thread Littlefield, Tyler

What do you think Emile?
I think that that starts with you. You want to be more accepting when it 
comes to you, but you've had no problems calling people an idiot and 
otherwise insulting them just as you are complaining about.

On 1/25/2011 6:07 PM, rantingrick wrote:

On Jan 25, 6:55 pm, Emile van Sebilleem...@fenx.com  wrote:


Oh, that everyone should blindly accept you as is and without regard for
established protocols

What protocols? Where is this standard posted? Can you give me a link?
I would like to know what is expected of me.


-- we certainly should all jump to your slightest
whim.

Get a [CENSORED] clue.

Thats not very nice Emile.

What is it going to take for you (and others) to take me seriously? I
have been within this group for more than four years and you still do
not accept me. I have been ridiculed, brow beaten, laughed at,
trolled, and any negative thing that can be done to someone. Heck, in
my very first post i was crucified by the community. I'll admit that I
have made some mistakes -- and i have apologized for them. Maybe you
need to be a little more accepting of me. Maybe this group IS not a
homogeneous block as you would like. Maybe we ALL need to be a little
more humble to each other.

What do you think Emile?




--

Thanks,
Ty

--
http://mail.python.org/mailman/listinfo/python-list


  1   2   >