This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
5716
Off-topic / Talk about double standards
« on October 26th, 2011, 10:25 AM »
I've just had a hilarious moment.
You know how hardcore the GPL is about freedom? I just found a case that is a GNU project, no less, that doesn't even adhere to its own licence.
For my current plugin, I needed some images, and a particular GNU project has some that are - with some work - suitable. The FAQ page makes it quite clear that the images are licensed under the GPLv3,[1] which is fine (even though they're images, some of the images are provided in a code format for linking directly into C executables, not uncommon on older X software)
Here's the gotcha. It says quite clearly that if my software is GPL, I'm allowed to use them, but if it's in any way non GPL, I'm not and have to ask permission. Which would be true, if the GPL didn't give me a get out of jail free card.
I've created an image out of the provided images (a CSS sprite, in this case), and I'm not linking to the file in execution, but indirectly which is defined as a common interface, so I actually have to do nothing other than make it clear the individual file itself is GPL, but it just hit me how their site seems to imply that I need to ask for permission to do something expressly granted in the GPL itself, even in the GPLv3.
You know how hardcore the GPL is about freedom? I just found a case that is a GNU project, no less, that doesn't even adhere to its own licence.
For my current plugin, I needed some images, and a particular GNU project has some that are - with some work - suitable. The FAQ page makes it quite clear that the images are licensed under the GPLv3,[1] which is fine (even though they're images, some of the images are provided in a code format for linking directly into C executables, not uncommon on older X software)
Here's the gotcha. It says quite clearly that if my software is GPL, I'm allowed to use them, but if it's in any way non GPL, I'm not and have to ask permission. Which would be true, if the GPL didn't give me a get out of jail free card.
I've created an image out of the provided images (a CSS sprite, in this case), and I'm not linking to the file in execution, but indirectly which is defined as a common interface, so I actually have to do nothing other than make it clear the individual file itself is GPL, but it just hit me how their site seems to imply that I need to ask for permission to do something expressly granted in the GPL itself, even in the GPLv3.
| 1. | v3 isn't nearly so brain-dead and last-century as v2 is. |
5717
Plugins / Re: Using permissions in plugins
« on October 26th, 2011, 12:47 AM »I like the idea of plugins having there own permissions page
The only time that might be a drag is if one adds a new group or something down the line. How ever that is rare
Maybe a link on the (core) permissions page to the (each) plugins permissions page to make it slightly easier.
5718
Plugins / Re: Using permissions in plugins
« on October 25th, 2011, 08:01 PM »
Argh.
Already, without writing a single line of extra code, permissions can be set for specific features outside the permissions area.
Grab an SMF forum. Doesn't matter what version (though if it's 2.0, be sure to turn the calendar on), then go to the calendar settings. In there, there is a collection of permissions for the calendar.
You don't even have to revisit the permissions page to set them, you just configure the calendar right there, its settings and its permissions.
Now imagine that the calendar is a plugin. It will be eventually but right now that's hypothetical. Anyway, the calendar is a plugin, you enable it, an icon appears in the Plugins area in the ACP (menu included), where all the settings are.
My central point is that if you are defining a page in the admin for something, why is there a need to put part of its configuration in one place and part in another? Especially when it is not immediately obvious what is going on and causes so many questions for users.
This lead me to wonder if, in fact, it would be better not to allow the main permissions to be directly configurable and force plugins to contain all their permissions in their own configuration area.
There are not that many cases where a plugin would add a permission and no other settings whatsoever, in fact I can only think of about 3 cases I've seen where it would come up and even then, it still requires more work than just setting up a permission anyway.
I would note that plugins having their own permissions/settings area is not unheard of, nor is it unheard of to force them to do that. WordPress operates on that sort of principle, as does iOS, and for good reason.
Already, without writing a single line of extra code, permissions can be set for specific features outside the permissions area.
Grab an SMF forum. Doesn't matter what version (though if it's 2.0, be sure to turn the calendar on), then go to the calendar settings. In there, there is a collection of permissions for the calendar.
You don't even have to revisit the permissions page to set them, you just configure the calendar right there, its settings and its permissions.
Now imagine that the calendar is a plugin. It will be eventually but right now that's hypothetical. Anyway, the calendar is a plugin, you enable it, an icon appears in the Plugins area in the ACP (menu included), where all the settings are.
My central point is that if you are defining a page in the admin for something, why is there a need to put part of its configuration in one place and part in another? Especially when it is not immediately obvious what is going on and causes so many questions for users.
This lead me to wonder if, in fact, it would be better not to allow the main permissions to be directly configurable and force plugins to contain all their permissions in their own configuration area.
There are not that many cases where a plugin would add a permission and no other settings whatsoever, in fact I can only think of about 3 cases I've seen where it would come up and even then, it still requires more work than just setting up a permission anyway.
I would note that plugins having their own permissions/settings area is not unheard of, nor is it unheard of to force them to do that. WordPress operates on that sort of principle, as does iOS, and for good reason.
5719
Off-topic / Re: Google Galaxy Nexus
« on October 25th, 2011, 06:28 PM »I'm seeing this from a standard user point-of-view while you're seeing it from a more real-world view. The two aren't entirely separate, but it's two sides of venn-diagram.
You also get into the brouhaha of having to learn the ins-and-outs of the new system to get your productivity to the way it was before.
It doesn't change with the context, whether it's a business desktop and business app or a personal mobile and personal app - if it's fundamentally different, you have to lose some time in relearning where things are.
5720
Plugins / Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« on October 25th, 2011, 06:00 PM »
As compared to...?
From http://en.wikipedia.org/wiki/Mozilla_Public_LicenseQuote Quote Long story short, if an MPL module were to be implemented in Wedge for any reason, that's fine. It's compliant with just about any licence out there, doesn't enforce wider licence changes (unlike GPL) but pretty much enforces that any MPL file *stays* MPL, because you can't have a file that's both MPL and proprietary.[1]
Essentially if we were to integrate something, the MPL file(s) and any changes we've made to make them work would remain MPL, irrespective of the rest of Wedge's licence, regardless of what licence that is.
In some ways it's better than BSD because it doesn't allow sub-licensing in the way BSD does, and it should be noted that if SMF were MPL licensed rather than BSD licensed, we'd have a much harder time justifying the current non BSD licence (and even harder trying to enforce that)
I don't really plan on using MPL for my plugins though, for the time being I'm much happier sticking a free to redistribute, but no derivative works licence on them.
From http://en.wikipedia.org/wiki/Mozilla_Public_License
The rights granted by the initial author include: 1. to use, reproduce, modify, display, perform, sublicense, and distribute the source, and modified version of the source. 2. patent rights to use and make available the original code 3. to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes
The rights granted by subsequent users include: 1. to use, reproduce, modify, display, perform, sublicense and distribute the source of their modifications 2. patent rights to use and make available both the modifications and the entire work 3. to distribute works which contain the code in combination with new code, and to license the new code in any way the distributor wishes
The way in which the Mozilla Public License is drafted basically requires subsequent users to license the original code under MPL and all additional code under any kind of license. Therefore, a company can create a proprietary product from code licensed under MPL by licensing the added components in a closed source manner. The stipulation that core files stay under the MPL provides incentive for developers to improve and develop aspects of the core functionality. The MPL is GPL-incompatible because the GPL module cannot be legally linked with an MPL module.
Essentially if we were to integrate something, the MPL file(s) and any changes we've made to make them work would remain MPL, irrespective of the rest of Wedge's licence, regardless of what licence that is.
In some ways it's better than BSD because it doesn't allow sub-licensing in the way BSD does, and it should be noted that if SMF were MPL licensed rather than BSD licensed, we'd have a much harder time justifying the current non BSD licence (and even harder trying to enforce that)
I don't really plan on using MPL for my plugins though, for the time being I'm much happier sticking a free to redistribute, but no derivative works licence on them.
| 1. | By which I mean any other licence, technically. Even GPL comes into that category. |
5721
Features / Re: New revs
« on October 25th, 2011, 04:54 PM »
(2 modified, 3KB)
Revision: 1132
Author: arantor
Date: 15:54:11, 25 October 2011
Message:
+ Admin panel settings pages, where they use inline permissions, the inline permission can now set - if it wants - per permission exclusions by group, so for instance you could put a general access and an admin level access permission in the same page if you wanted. (ManagePermissions.php, ManageServer.php)
----
Modified : /trunk/Sources/ManagePermissions.php
Modified : /trunk/Sources/ManageServer.php
Revision: 1132
Author: arantor
Date: 15:54:11, 25 October 2011
Message:
+ Admin panel settings pages, where they use inline permissions, the inline permission can now set - if it wants - per permission exclusions by group, so for instance you could put a general access and an admin level access permission in the same page if you wanted. (ManagePermissions.php, ManageServer.php)
----
Modified : /trunk/Sources/ManagePermissions.php
Modified : /trunk/Sources/ManageServer.php
5722
Plugins / Re: Using permissions in plugins
« on October 25th, 2011, 04:22 PM »
Hmmm, curious. I knew that the inline permissions setup wasn't able to handle any/own, and that it was possible to set exclusions (like permissions that shouldn't be possible to give to guests) but I didn't realise that the exclusion was per page, not per permission.
Might have to fix that, since I want to set up a settings page with three permissions, one that should be open to any users, one that should be non-guest groups, and one that should be non guest, non regular member groups. (i.e. general access, slightly restricted and administrative type)
Might have to fix that, since I want to set up a settings page with three permissions, one that should be open to any users, one that should be non-guest groups, and one that should be non guest, non regular member groups. (i.e. general access, slightly restricted and administrative type)
5723
Plugins / Re: Personal plugin showcase (yes, I'm an attention grabbing git)
« on October 25th, 2011, 03:59 PM »
In other news, I've started work on a new plugin. Details will be shared when I have something to share but suffice to say it's a bigger plugin than any of those in this thread, it will probably end up being smaller than WedgeDesk in the end (with any luck) but it is also something I've long thought about doing and never done before.
What I will say at this juncture is that it is a ground-up rewrite of an older SMF mod, without using any of the original code, database tables or JavaScript, and that it will naturally come with the sorts of refinements that you should be used to by now from me :P This one isn't so much to prove the plugin system but that I need to take a mental break from all the plugin stuff itself because I'm fed up trying to solve the issues attached to things like FTP for the moment.
Also, slightly more controversially is that I've chosen a licence for it, and it's one that I suspect a number of people won't be too pleased with, because it's the CC Attribution No-Derivs licence. It means that it can be shared but not forked, mostly because I want to retain control of it, but of course if I end up getting fed up with it I'll relicence it appropriately at the time.
What I will say at this juncture is that it is a ground-up rewrite of an older SMF mod, without using any of the original code, database tables or JavaScript, and that it will naturally come with the sorts of refinements that you should be used to by now from me :P This one isn't so much to prove the plugin system but that I need to take a mental break from all the plugin stuff itself because I'm fed up trying to solve the issues attached to things like FTP for the moment.
Also, slightly more controversially is that I've chosen a licence for it, and it's one that I suspect a number of people won't be too pleased with, because it's the CC Attribution No-Derivs licence. It means that it can be shared but not forked, mostly because I want to retain control of it, but of course if I end up getting fed up with it I'll relicence it appropriately at the time.
5724
Plugins / Re: Quick little plugin
« on October 25th, 2011, 03:50 PM »
*nods* Though as much as I wrote the thing, I made it abundantly clear in the readme etc. that the entire idea is flawed and how badly it is flawed.
In fact, let me grab the readme I have. It's not the first draft (which was far more abusive! :lol:) but it's what's in SVN and what I'm happy to ship the plugin with.Quote On the flip side, it's about the simplest possible plugin that actually *does* something meaningful, as opposed to something that crudely hacks about with the main menu like my original demo plugin did.
In fact, let me grab the readme I have. It's not the first draft (which was far more abusive! :lol:) but it's what's in SVN and what I'm happy to ship the plugin with.
This plugin attempts to stop users right-clicking their mouse, in a half-hearted attempt to stop users copying. I only wrote this plugin because people will keep asking for it as though it magically protects your content.
It doesn't. It won't. It can't. Because no matter how clever you think you are, the web wasn't designed to be protected in that fashion, and it's trivial to bypass.
In an ideal world, you'd remove this plugin and have learned something, but if not, this plugin will use some JavaScript to attempt to block copying through the right mouse button. Turning off JavaScript will evade it, as will using the keyboard to copy things, also it should be defeated by mobile browsers that don't issue normal mouse 'click' things, and some browsers have a specific option to prevent you from doing what you think you need to do. This is not fixable, please don't ask.
5725
Plugins / Re: Quick little plugin
« on October 25th, 2011, 03:09 PM »
You could even have it remember after the first time, so that it only did it once per page rather than every click.
To change it, you would have to change the stopImmediatePropagation() call though, because if that fires, it still prevents event bubbling or chaining. It's just covering two different angles, both triggering the context menu as well as triggering an actual right mouse click.
To change it, you would have to change the stopImmediatePropagation() call though, because if that fires, it still prevents event bubbling or chaining. It's just covering two different angles, both triggering the context menu as well as triggering an actual right mouse click.
5726
Plugins / Re: Using permissions in plugins
« on October 25th, 2011, 01:29 PM »
I still don't get why there's a need to provide a link from one place to another when the setting on the other page is on the page you're putting the link in...
5727
Off-topic / Re: Google Galaxy Nexus
« on October 25th, 2011, 10:42 AM »The source code for Gingerbread was released in a week or two after Nexus S' release AFAIK
Fighting fragmentation is what Android needs to concentrate on now. It's the most used mobile OS[1] and while it has that penetration, it's suffering for it right now.
| 1. | Though I don't think it's entirely that way because it's best of breed. I think it's more the fact that it's "freely" available and means phone devs don't have to worry about developing their own OS and kickstarting a dev culture around it which is where MS and RIM are right now. Oh, and the fact that almost every manufacturer is using it, so while the numbers do support it being more widely used, it's spread across over a hundred different phone models. |
5728
Off-topic / Re: Google Galaxy Nexus
« on October 25th, 2011, 10:31 AM »But then he won't fair any good on iOS, would he?
I don't know how much of it was the marketing folks at Vodafone talking him round, though. He isn't the most mentally agile of people and does tend to be swayed by marketing a lot.
Well the SDK is available and Google has confirmed the source code's release after the Galaxy Nexus is released.
5729
Off-topic / Re: Google Galaxy Nexus
« on October 25th, 2011, 10:22 AM »but it still manages to be fairly easy and I've seen even the dumbest of the people get how it works
they are trying to unify thing as much as possible starting with entire unification of phones and tablets.
| 1. | Just type the number in and press the green-lit button. |
| 2. | Press down, I think it is, from the front page, to go into the address book. |
5730
Off-topic / Re: Google Galaxy Nexus
« on October 25th, 2011, 09:19 AM »Well just like the Nexus S it was built by Samsung, but Google themselves are distributing it instead of a certain carrier. Which means no Sprint or Verizon crapware on the phone.
As have I. I forgot about Amazon's marketplace. I was only thinking of the one that I use for my phone. Ah well, that's the nature of the beast, I guess.
That's true. It's easy for users to jump from version to version without having to understand a new layout, and I have to give Apple credit for that. It's like the saying goes: "If it ain't broke, don't fix it." But the problem that I have is that it doesn't evolve much. It just stays the same, at least visually, during all of it's updates.
The nature of everything is to eventually change. Software evolves, organizations shift, it's just the way things go. I can't remember where I've read it before but it spoke of how things that were static appear to be dead. While we all know that Apple is very much alive this day and age with all of their iDevices dominating the market, their software seems....inanimate.
OK, piece of history. A few years ago the office I worked for updated all their systems; we'd been bought by a much bigger company, and were integrating our systems into theirs. Until you do a mass migration of 100+ users from Windows 2000 to Windows XP and Office 2000 to Office 2003, you don't really learn to appreciate the importance of things remaining how they were - because your users *will* expect it.
Also, when you're the number 1 'go to' vendor for a given class of device, especially one where your interface is considered pretty much best of breed (and let's face it, that is how iOS is pretty much considered), you do not just change things every release in an attempt to look clean and new.
Then again I've never used an iProduct aside from a Macbook so I can't really speak for any of the iOS devices. Only what I've seen from Conferences.
The problem with Android, IMO, is for example that people shouldn't care about what processes an app is going to run or modify.. it's a friggin phone!
It should be simple.
But on the flip side, most people buy such devices expecting them to 'just work' and in this day and age, that's not unrealistic, and Android doesn't seem to do much from what I've seen to aid this.
Android is good for many advanced users, but I think it's not for all the people that for example don't want to go around and search for the right firmware to flash on their devices or other things simple for experienced users but difficult (and non sense to do on a phone) for "normal" users