Pages: [1] 2
  Print  
Author Topic: Scalability  (Read 4043 times)
Offline (Male) Josh @ Dreamland
Posted on: November 24, 2010, 12:10:21 PM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
This r/coderaid business has made me realize that ENIGMA's site is not ready for the same kind of jumps that ENIGMA itself is ready to make. While the engine is scalable in the sense that most of the systems are completely modular now, the site is based off of SMF, which has a very sad excuse for a user name system.

We now have a bug tracker -and- a Wiki to contend with as far as users are concerned. Since a2h wrote the tracker himself, we haven't had issue with it. But the new Wiki requires an entirely new user base, and it just isn't compatible with SMF. The crossover that was written for it does not comply with SMF 2.0; from what I can tell, the database system between 1.2 and 2.0 is -very- different. They are similar enough that I think a port is possible, but then we have a new issue: user name content. "Josh @ Dreamland" isn't exactly a Unix name. However, Wikis don't agree with underscores or dashes, either. That's difficult to work around with our current layout.

We have two options.
1) Change everyone's login name, leaving the display name.
 This means I will have to log in as JoshDreamland from now on, but you will still see me as Josh @ Dreamland on the forums. Score_Under will have to log in as ScoreUnder. I don't have figures on the matter, but from what I can tell, the number of people affected will be approximately a lot.

2) Add another field to the SMF SQL table for Unix names. This puts less strain on the users, but more on the web developers trying to port bridge modules such as SMF-Wiki. What I mean is, a2h or myself will have to custom-tailor bridge code such as the code that enables MediaWiki to use SMF user names. Also, we have to modify SMF's account creation process, and run a script on our current SQL tables to generate Unix names for the 350 existing members and check for conflicts (this is the easy part). I don't personally have the web experience to make the former change to SMF, and I'm not going to volunteer a2h to do this.

This is here as an FYI for what might happen. If a2h doesn't appraise as simple modifying the user creation query to generate a unix name and store it with the rest of the information, we may go with option one and change at least a tenth of everyone's logins. We can probably post a notice about that to help members remember (most of them will just enter it once and tell FireFox to change it).

So, yes. Just a heads up. If you have a better idea, let us know, of course.

And if you're outraged about all this work over a Wiki, this is =not= the last time we'll be seeing this issue. Look at 64Digits. I am confident in saying that if we have an influx of users, we can start a 64Digits-like hosting system. When we do that, a behind-the-scenes Unix naming convention will be very handy, otherwise some download URLs may be invalid or difficult to escape (think of all the %20s!).

-Josh
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Female) IsmAvatar
Reply #1 Posted on: November 24, 2010, 02:27:16 PM

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 886

View Profile Email
I needn't mention that I'm very good at php and SQL. Aside from time constraints (sex, etc), I'd be willing to help out in any way that I can. I think we can work out a way that users will have 2-3 names: A login name, a display name, and a unix name essentially invisible to them.
Logged
Offline (Male) Josh @ Dreamland
Reply #2 Posted on: November 24, 2010, 02:50:47 PM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
They may need to be able to edit their unix names. People like serp tend to deal with the unavailability of a name ("s" in serp's case) by prefixing underscores. Those are technically unix compliant, but Wikis evidently don't like them. That said, the user needs some sort of say in their unix name.

For now, if for any reason the letters-digits forms of any two names in our database collide, we will simply add a "2". The user needs the ability to do that as well (But the opportunity to be original; their name will be visible in their URL).
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Unknown gender) The 11th plague of Egypt
Reply #3 Posted on: November 24, 2010, 04:10:49 PM
Member
Joined: Dec 2009
Posts: 284

View Profile
...or 3) you could just keep a separate login for the wiki.

Messing up the login on both the forum and the tracker to fix the (much less used) login on the wiki seems a bad tradeoff to me.
Logged
Offline (Male) Josh @ Dreamland
Reply #4 Posted on: November 24, 2010, 09:13:27 PM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
The forum and tracker share a login. That's the idea. The only change in your name for option one would be the spaces. If we pull off option two, you would not notice a change, and any commits you make in the Wiki and any files you upload (should we add such a system) would be stored under The11thplagueofEgypt. But, in the event we have to go with the first one, I guess we could hold an opinion poll before we make the change. But eventually, I believe this change will need implemented, and so it may be frugal to do so ahead of time. As in, now; the first time it's needed.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Female) IsmAvatar
Reply #5 Posted on: November 24, 2010, 10:06:53 PM

LateralGM Developer
LGM Developer
Location: Pennsylvania/USA
Joined: Apr 2008
Posts: 886

View Profile Email
What about a hash for the unix name to avoid collisions?
Logged
Offline (Male) notachair
Reply #6 Posted on: November 25, 2010, 01:52:13 AM

Definitely not a chair
Contributor
Joined: Feb 2008
Posts: 299

View Profile
How about having the SMF user id prefixed in front of the username made safe for the Wiki?
Logged
Post made November 25, 2010, 09:19:26 AM was deleted at the author's request.
Offline (Male) Josh @ Dreamland
Reply #8 Posted on: November 25, 2010, 09:30:57 AM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
a2h:
That'd work, but it'd make URLs comparatively difficult to remember if it can be avoided.

fede:
The tracker isn't complete. There's a difference between a bug and a missing feature.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Unknown gender) luiscubal
Reply #9 Posted on: November 25, 2010, 01:26:24 PM
Member
Joined: Jun 2009
Posts: 452

View Profile Email
Can I have the UNIX name "root"? :D
Logged
Offline (Male) Josh @ Dreamland
Reply #10 Posted on: November 25, 2010, 02:55:43 PM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
First come, first served.
...But no.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Post made November 26, 2010, 03:39:26 AM was deleted at the author's request.
Offline (Male) RetroX
Reply #12 Posted on: November 28, 2010, 09:14:23 PM

Master of all things Linux
Contributor
Location: US
Joined: Apr 2008
Posts: 1055
MSN Messenger - classixretrox@gmail.com
View Profile Email
Why not add a separate column to the users table that stores the safe name, and when adding users, check for safe name, not regular name.  Problem solved, and you can still keep your regular names for the wiki.

For the record, Josh @ Dreamland is a valid MediaWiki username.  The only invalid ones would be ones that contain special symbols like [ and ].
Logged
My Box: Phenom II 3.4GHz X4 | ASUS ATI RadeonHD 5770, 1GB GDDR5 RAM | 1x4GB DDR3 SRAM | Arch Linux, x86_64 (Cube) / Windows 7 x64 (Blob)
Quote from: Fede-lasse
Why do all the pro-Microsoft people have troll avatars? :(
Offline (Male) Josh @ Dreamland
Reply #13 Posted on: November 28, 2010, 11:27:06 PM

Prince of all Goldfish
Developer
Location: Ohio, United States
Joined: Feb 2008
Posts: 2934

View Profile Email
Well, no, it isn't. It's a valid page name, but not a valid user name.

Quote
Login error
You have not specified a valid user name.

Yes, it says "login," but that's from the "Create Account" dialog.

Anyway, even if it were a valid username, I'd still need a unix page if I intended to use any username-based upload services ever to be offered on this forum (which, as I hinted, will only happen when ENIGMA's on dedicated hosting, which itself will only happen when ENIGMA has the traffic required to generate ad revenue to pay for such or a good chunk of such).

Oh, and fede, let me reclarify: the difference between a bug and a missing figure is not well-conveyed by your post. The edit buttons are just there for show; they were never actually implemented at all.
« Last Edit: November 28, 2010, 11:29:11 PM by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Post made November 29, 2010, 10:02:44 AM was deleted at the author's request.
Pages: [1] 2
  Print