Indie game development
Did you know that we are not backed up by one of those big game publishers out there? This means that we have very limited funds in developing and maintaining this game. While it gives us some advantages, it mainly gives us disadvantages: There's currently about 4 000 questions in the review queue of your suggestions, and it's gaining hundreds more every day. We simply can't keep up with the suggestions you send in.
If you do like this game, and would like it to be continously updated with new features and questions, you really should consider buying the pro version. The paid app will not only remove the ads for you - it will give us the means to keep working on this game.
And on a side note, we are currently working with the next update for the app. It will bring features such as a highscore list, playing multiple difficulties at once, more game modes and an updated design.
2012-01-14 11:52:56, Mattias Lindholm, www.triviaquiz.eu
Första appen till Android klar!
Idag så släpper jag min första app till Android genom Android Market. Det är ett frågesportsspel som baserar sina frågor på fakta. Du kanske vill spana in spelet - men kom ihåg att detta projekt är pågående! Appen har över 80 svenska frågor i den första versionen som nu släpps.
Det är tidskrävande att skriva frågor till spel som detta, och som en heltidsstudent så gör jag det i den takt jag är kapabel till. Det kommer att komma en uppdatering med ännu fler frågor ganska snart, och ju fler användare den har desto enklare blir det för mig att lägga in flera frågor. Betygsätt och dela med dig av spelet till dina vänner om du gillar det!
Det kanske till och med kommer en "skicka in en fråga"-funktion vid ett senare tillfälle. Jag har ju trots allt redan skapat utvecklingsverktyg via ett webbgränssnitt, så det skulle inte ta alltför många minuter att lägga till...
2011-11-26 15:10:51, Mattias Lindholm, www.xertoz.se
First Android app delivered!
Today I release my first Android application through the Android Market. It is a quiz game which bases its question on various trivial facts. You might want to check it out - but remember this project will be an ongoing one. The app has over 20 English questions, as well as over 80 Swedish ones, in its initial release.
It will be time consuming to add questions, and as a full time student I am doing it in the pace I am able of. There will be an update with further questions rather soon, and the more users this app has the easier it gets for me to insert further content. Rate the app and share it to friends if you like it!
There might even be a "send us your own question" type of feature in the app further down the road. I do have development tools implemented on a web interface already, so that'd not take too many minutes to write after all...
2011-11-26 15:00:55, Mattias Lindholm, www.xertoz.com
Source code for developers
It seems that I've been getting requests for the source code of some of my Firefox projects. The irony of this is that most Firefox addons themselves contain the actual source code. I might be subject to trolling concidering an addon developer would know that, but that's another story.
To prevent further confusion, I want to state that all of my Firefox projects are such addons that contain the source code in its installation file. It is possible to learn more about creating extensions for Firefox in the proper Mozilla documentation. For anyone that wishes to improve the code of any of my addons, I do have a github profile for all my git repositories. All of my open source projects will be developed through there (at this time) and any code modifications can be submitted to me by anyone on github.
2011-10-13 20:48:11, Mattias Lindholm, www.xertoz.com
A new trait for plugins
With the beta version of PHP 5.4 being released last week, the long awaited trait feature is soon available for production usage. Unfortunately for me however, there seems to be no way of ensuring a certain scope for traits. This means that any trait written can be loaded into an unintended class, which would break the code once executed. That's for another day to fix, though.
As I can now implement my traits, I've gone ahead and started writing code which extends Forge with new functions. The code additions I've had in mind have been planned for quite some time now, and all I need to do is to realize them.
First out of these additions is the plugin functionality, which is available for any addons that wants to implement it. Should you want to write a module in such a way that it supports plugins, all you need to do now is:
namespace forge\modules;
class ExampleModule extends \forge\Module {
use \forge\Pluginnable;
}
This will add three new methods to the module which are isPlugin, getPlugin and getPlugins.
- The isPlugin method is meant for overriding by the module if any type of plugin is required to extend some other class than \forge\Plugin which is the default requirement.
- The getPlugin method is used to get a callback to a plugin, so it can be used by the module code.
- The getPlugins method will search and return all valid plugins for the module.
All plugins are simply defined by creating classes in the module's plugins namespace, that extend the \forge\Plugin class. (or any other explicit class required by the module) Just like this:
namespace forge\modules\ExampleModule\plugins;
class ExamplePlugin extends \forge\Plugin {
static protected $version = '1.0.0';
}
It would then be possible to call the plugin by doing things like: (given that you defined the method foobar of the plugin, of course)
$plugin = \forge\modules\ExampleModule::getPlugin('ExamplePlugin');
$plugin::foobar();
Remember, of course, that the functionality of \forge\Pluginnable may change at any given time. It is after all a highly experimental build of Forge. You can see what I did with the code in this commit.
2011-10-08 22:06:04, Mattias Lindholm, www.xertoz.com
Lorem Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque faucibus sollicitudin neque a sodales. Pellentesque sit amet ligula et nibh condimentum gravida vel sit amet ante. Cras eu mi eget dolor interdum lobortis. Ut posuere vestibulum erat in accumsan. Mauris dapibus, mi quis varius aliquet, nibh neque consequat lorem, eget posuere arcu elit vitae diam. In vitae dui ac est mollis commodo. Vivamus tristique dignissim lorem, quis facilisis nibh ullamcorper eu. Proin eros eros, mattis in ultricies vitae, viverra sed leo. Morbi vulputate nulla sapien. Curabitur eget lorem eu tortor tristique vulputate. Etiam eget orci nulla, a scelerisque libero.
Ut vitae ornare augue. Quisque purus nibh, vestibulum at semper non, congue ut metus. Donec sed nisl massa. Sed dapibus orci ut mi fermentum faucibus. Vestibulum pulvinar aliquet nisi. Quisque ut erat eget libero venenatis consectetur nec vel orci. Ut posuere viverra lorem, a accumsan leo adipiscing tincidunt. Quisque hendrerit consectetur vestibulum. Nam rutrum porta lacus sit amet lacinia. Curabitur consequat lectus vel neque viverra pellentesque. Ut et velit luctus sapien accumsan tincidunt sed non leo. Etiam elit augue, ultricies quis bibendum et, sodales sed massa. Morbi non nisi nec ante dapibus laoreet. Ut augue sem, feugiat a malesuada vitae, volutpat quis nulla.
2011-10-04 15:54:27, Mattias Lindholm, one.dev.xertoz.se
Faking DOM attributes in Firefox addons
It seems like one of the major commenting platforms, which shall remain nameless, had changed something about their code behavior. Websites using this platform started causing CommentBlocker to crash Firefox. This seemed like a problem with what I call the jail guard of the addon, and a quick disable of the function showed that I was right in my suspicion.
The old code of the jail guard, which was crashing Firefox, was run actively to prevent pages from displaying disallowed elements. It required some memory usage and a listener for any element changes on the page, it could be interpreted as slow and inefficient because it monitored all sorts of changes unrelated to its function. This active jail guard somehow got in a loop of death with the comment platform, supposedly when the platform tried to show comments until they are shown and the addon was hiding comments when they are shown. Wether this was the actual cause or not is irrelevant, but it is a probable one since disabling the jail guard fixed the crash bug.
When I first wrote the jail guard I was still rather new to writing Firefox addons, and as such it would have been impossible for me to write perfect addons from the beginning. I had at that time no knowledge of any other way to implement such a jail guard. Over time though, along with writing further addons and becoming an editor at Mozilla's addon page, I acquired more techniques. And in conferring with other developers over the IRC channels at Mozilla, I was told that style sheets of addons, which I already used in other addons than CommentBlocker, would not be noticeable from the page as I thought they were.
This means that you can fake a page into believing that an element is being displayed, however in reality it is being hidden by the addon for the user. Styles provided by addons with the Stylesheet Service may override anything that the page or its JavaScript is telling the browser to do, without the page context knowing about the end results. It was exactly what I was looking for as a solution for my problem, which supposedly was that the page knew that the comments were being hidden.
As it is now, the jail guard has been changed into a passive one instead, and the content scope is completely unaware of it. (except for the CommentBlocker and cbIsActive classes added to some elements, but that's for another day to hide)
2011-10-04 10:43:27, Mattias Lindholm, www.xertoz.com
i18n
It's been delayed one time too many. My site was recieving alot of international traffic, while being written only in Swedish. The problem has now been fixed, and the new website for people who do not speak Swedish is the one you are on right now.
My point of having this is to simply present myself to whoever visits my website, as well as writing blog posts about various topics that might interest me. I did have at least one "interesting" post draft in my head a couple of days ago, although it seems I've forgotten it. Well, at least the next time I have one I'll have the website up and running already.
2011-10-02 00:00:00, Mattias Lindholm, www.xertoz.com
Ny webbsida: totalrant.net
Jag har nu startat ytterligare en webbsida - för att få en bättre översyn över vad jag skriver för blogginlägg. Den nya sidan nås på totalrant.net och innehåller alla inlägg jag har skrivit på någon av mina bloggar.
2011-05-23 00:00:00, Mattias Lindholm, www.xertoz.se
CommentBlocker 3.0
It's finally here - CommentBlocker for Firefox Mobile! With the new version of the addon you can now use it with your mobile device.
Read more about what's new on the changelog page.
2011-05-18 00:00:00, Mattias Lindholm, www.commentblocker.org
New help pages
The help pages are slowly being filled with contents. If you require any help you should see if they can help you - and if they can't, you should send an email to Mattias Lindholm.
2011-05-13 00:00:00, Mattias Lindholm, www.commentblocker.org
CommentBlockers egna hemsida
Det finns nu ytterligare en webbsida som jag har hand om: CommentBlockers egna webbsida.
Det finns kanske inte så mycket där just nu, men det kommer att fyllas på mer innehåll för support och utveckling allteftersom det behövs.
2011-05-06 00:00:00, Mattias Lindholm, www.xertoz.se
Tilläggsbonanza
Den senaste veckan så har det skett en del nytt på utvecklingsfronten. Jag har till att börja med testa en tjänst för källkodshantering av mina projekt som är open source: Ni kan hitta mig och mina projekt på github nuförtiden.
Tjänsten verkar lovande då git faller mig mer i smaken än svn, och så det att det är ett komplett community på github runtomkring mina projekt. Bland mina projekt finns ett nytt tillskott också: Loading Bar är mitt senaste tillägg till Firefox. Den lägger enkelt till en laddningsmätare bakom adressraden när man går in på sidor. Det är en funktion som fanns i betan av Firefox 4, men som till slut föll ur och därför skrev jag ett tillägg till det då jag gillar den funktionen.
2011-05-05 00:00:00, Mattias Lindholm, www.xertoz.se
Microsoft och kontinuitet - något som inte går ihop?
Tydligen så kan det vara så att besökare till våran webbsida kan ha lite problem med att klicka på den i Internet Explorer 9. Det verkar som om Microsoft har gjort något med den senaste versionens JavaScript vilket bryter det normala beteendet på sidan.
Faktum är att vår webbsida fungerar bra med webbläsararna Internet Explorer 7 till 8, Firefox 3.6 till 4, Chrome, Safari, Opera och Opera Mini. Däremot så beter den sig inte bra alls i Internet Explorer 9, förutom om användaren klickar på kompatibilitetsläget, förstås.
Problemet verkar ligga i kod från ett projekt som heter lightbox, och det ser ut som om en ny version finns publicerad på projektets hemsida. Forge och därmed också vår webbsida får antagligen en uppdaterad scriptbas under nästa vecka, ser det därmed ut som.
Varför envisas Microsoft med att släppa sina nya webbläsare med kravet att webbutvecklare världen över måste ändra på sina webbsidor, för att det ska fungera i den nya versionen?
2011-03-25 00:00:00, Mattias Lindholm, www.xertoz.se
Harder, better, faster, stronger
Senaste uppdateringen till CommentBlocker (2.1.4) snabbar upp tillägget märkbart, samtidigt som det lägger till nya funktioner efterfrågade av användare.
För användaren så betyder det att man nu kan använda både * som ett så kallat wild card, men även regular expressions om man är kunnig inom programmering. Kortfattat så betyder det att man kan ställa in *.xertoz.se i sin lista med webbsidor och den kommer att användas för alla mina sidor, såsom en.xertoz.se och www.xertoz.se!
Den optimeringen som har skett i koden har skett först och främst med hänsyn till Firefox 4, som nu är i sin release candidate, och det har visat sig en lyckade make-over från Mozilla. Deras nya Javascript-motor JägerMonkey visar sig vara oerhört mer kompetent än den tidigare motorn från Firefox 3.6, och det betyder att jag med spänning sitter och inväntar den första stabila versionen av Firefox 4.
2011-03-16 00:00:00, Mattias Lindholm, www.xertoz.se
CommentBlocker 5000
Lagom tills dess att det började bli dags att uppdatera bloggen, så har CommentBlocker passerat 5000 nerladdningar på den officiella nerladdningssidan. Det finns än så länge runt 800 användare dagligen ute i världen, som förhoppningsvis upplever ett lite bättre internet.
Snart så lär även en ny webbsida komma upp för tillägget, då jag redan har plitat ihop ett första utkast för layouten på sagda sida. Däremot så tar det ett tag att tänka ut lite mer konkret funktionalitet, huruvida changelogs ska visas i tillägget med mera. Det är inte ett heltidsjobb att arbeta med tillägget (läs mer om det här) så det tas allteftersom när en stund ges över, vilket har varit tämligen sällan nyligen.
Frågan är ju var man drar gränsen för nyttosam information för användaren och överflödig funktionalitet. Jag ämnar inte fylla mitt tillägg med mer än vad den ska göra, nämligen. Men, på något sätt behöver man ju dirigera in trafik till webbsidan.
2011-02-09 00:00:00, Mattias Lindholm, www.xertoz.se
Inför 2011
Nu i början av året, lagom passande, så börjar företagets planer inför 2011 ta form. Nej, nu ska det inte ges ut några tomma nyårslöften om mer eller mindre abstrakta saker som inte går att genomföra. Det finns faktiskt konkreta planer på hur företaget ska nå sina mål under året, och några av de är redan igång.
Xertoz Webbutveckling kommer att kunna erbjuda webbhotell för sina kunder inom snar framtid, istället för som förut, då tredje part levererat webbhotell. Det kommer innebära att det blir bättre för kund, då vissa externa webbhotell har visat sig vara oförutsägbara och inneburit merjobb för oss som leverantörer samt sämre kvalitet för pengarna för kund. Webbhotellet som antagligen kommer upp under våren kommer att vara uppdelat i olika paket, för att man inte ska behöva betala för mer resurser än man nyttjar. Var dessa paket hamnar i storleksordning återstår att se.
Utöver webbhotell så är jakten på grafiker till företaget i full fart, för att Xertoz Webbutveckling ska ha möjlighet att leverera en komplett lösning för kunder där projektering, design, utveckling och drift tas om hand av oss. Tanken är att det ska medföra en bättre erfarenhet för alla delaktiga i projekt som vi åtar oss, istället för att skapa system med 3-5 parter som dagens roll som underleverantör medför.
Den fjärde generationen av Forge är i fasen då vi nu börjar leverera våra första projekt baserat på mjukvaran, och det kommer att blir fler leveranser av systemet under året. Forge har varit huvudbasen för företagets omsättning i tidigare versioner, och det kommer det att vara även fortsättningsvis. Den nya versionen har utvecklats med kunders feedback i åtanke och är nu framförallt enklare att använda som administratör, utöver det att systemet har blivit snabbare och säkrare.
Kort sagt, så ska företaget bli mer komplett och även växa under 2011. Hur bra det går får vi se över om ytterligare ett år, så får vi se var vi står då...
2011-01-06 00:00:00, Mattias Lindholm, www.xertoz.se
CommentBlocker, från eget till allmänt
Från början var egentligen mitt tillägg till Firefox, CommentBlocker, ämnat för eget bruk då jag personligen blir irriterad över de flesta kommentarerna fällda på internet. Som ett test, för att se hur väl open source fungerar de facto, så lades den upp för allmänheten via Mozillas egna system för tillägg.
Erfarenheterna jag har plockat på mig är att communityt runt Firefox och dess tillägg är ett starkt sådant. Det tog visserligen viss tid innan användare rullade in till mitt tillägg, men allteftersom de få pionjerande användarna kom till, så kom även viss mediaexponering genom recensioner etc. Detta medför fler användare av tillägget, och så visar även statistiken där det kan ses att tillägget har drygt 700 dagliga användare i dagsläget.
Men, allt är inte helt perfekt från början, vilket en del skribenter pekade ut. Eftersom tillägget var ämnat för mig från början, så var även inställningarna för andra invändare få. Detta har det kodats på, för att sedan programmeras om ytterligare, då inställningarna samt Firefox 4.0b7 har tvingat en del algoritmändringar i tillägget. Och nu, efter några timmars arbete spritt där inkomstbringande projekt har haft glipor, så finns version 2.1 för allmän nerladdning.
Resultatet? Användaren har nu fått ett bättre tillägg genom att ha gett feedback över vad som fungerat bra och vad som fungerat mindre bra. I min mening så är det ett perfekt sätt att föra samman utvecklingen och användningen av kod, men idag så fungerar det nog inte riktigt tyvärr. Faktum är att det kostar mig pengar att utveckla detta tillägg, i och med att jag inte spenderar tiden på kommersiella projekt, och då finns inte möjlighet att ge perfekt användarerfarenhet av tillägget, då detta prioriteras ned under kommersiella projekt.
Lösningen? Donationer. I dagsläget så har jag som ovan konstaterat runt 700 användare som nyttjar tillägget varav en (1!) har valt att donera till utvecklingen hittills. Det är tyvärr inte ekonomiskt genomförbart att utveckla och släppa mjukvara där drygt 1-2 promille av användarna donerar en låg summa pengar. Om jag jämför tillägget mot kundprojekt jag åtar mig direkt, så är inkomstskillnaden i klassen tiotusentals kronor, nackdel tillägg.
Det är inte aktuellt, och kommer aldrig bli aktuellt, att sätta upp CommentBlocker kommersiellt och endast sälja det, då detta var ett pilotprojekt så låter jag det vara som så. Men resultatet av mitt första experiment med open source-scenen är till det negativa, och det får tyvärr en att dra sig från att utveckla flera tillägg. Jag har i dagsläget några idéer för tillägg som skulle kunna vara rätt användbara, men tyvärr så är det inget jag kommer att spendera tid på att bygga ihop, då det för mig finns alternativa lösningar som jag klarar mig på. Den ekonomiska aspekten att göra det gratis för andra medans mina räkningar hopar sig på hög är inte lovande...
2010-12-14 00:00:00, Mattias Lindholm, www.xertoz.se
Trevlig bugg i WordPress
Har funnit en fin bugg i WordPress nu. På grund av okänd anledning så fick WordPress egna inbyggda menysystem för sig att börja ladda in JavaScript-bibliotek i fel ordning, och följande felmeddelande kunde avläsas i administrationen:
a.menuList.sortable is not a function /wp-admin/load-scripts.php?c=1&load=jquery,utils,nav-menu&ver=2b05c108d9016a4caa470b8edaf40953 Line 157
Lösningen? Att använda jQuery som det är tänkt att använda det i /admin/js/nav-menu.js vilket WordPress inte gör. JavaScript-filen består av 1 rad komprimerad kod med drygt 15 000 odokumenterade tecken, men lösningen är tämligen simpel. Koden i filen ser ut som:
var wpNavMenu; (function(b){...})();
Där punkterna i {...} är en mängd kod som jag inte tänker skriva ut. Det är inuti det blocket som felet uppstår, eftersom koden körs innan dess beroenden är laddade. Lösningen kan sammanfattas som följande, där ... återigen är samma kod som innan:
var wpNavMenu; jQuery(window).ready(function(){(function(b){...})()});
Med den lilla ändringen, så löses ett tämligen irriterande problem. Utan lösningen så fungerar nämligen inte menyfunktionaliteten alls på min installerade version av WordPress 3.0.2! Jag undrar hur många fler ställen liknande fel kan uppstå i detta system...
Ni kan följa ticket #15622 för att se vad utvecklarna av WordPress gör med den här informationen.
2010-12-01 00:00:00, Mattias Lindholm, www.xertoz.se
WordPress, populärt?!
Av någon för mig helt okänd anledning, så har WordPress blivit populärt. Jag kan förstå att det är populärt bland bloggare, då mjukvaran är skrivet för att hantera bloggar, och bloggar endast. Det är ur användarsynpunkt ett tämligen bra och enkelt system att administrera som bloggare, och det har acceptabel funktionalitet genom sitt plugin-stöd.
Men att det har blivit allt mer populärt bland icke-bloggare att använda, det förstår jag mig inte alls på. Jag har märkt att jag börjar få in fler WordPress-förfrågningar procentuellt av de offertförfrågningar jag får. Varför vill personer använda WordPress, fast de inte huvudsakligen ska blogga?
Jag har nyligen slutfört ett projekt där bloggen står för drygt 20% av det egentliga innehållet på en webbsida, men WordPress nyttjas och 95% av innehållet är redigerat som en blogg. Varför löser jag det så? För att kund har krav på att WordPress ska användas. Samma sak gäller ett annat projekt där utvecklingen är i full gång, fastän där så är ju faktiskt blogginnehållet drygt 40%.
Till saken hör dock att WordPress varken är flexibelt eller ett komplett CMS. WordPress påtvingar dig en viss uppsättning av sidor, och den påtvingar även hur innehållet ska hanteras. Egentligen skulle vilken ordentlig CMS-lösning som helst fungera bättre än WordPress i just dessa sammanhang, men kunderna begär WordPress.
Notera att jag endast går in på de övergripande aspekterna med den här artikeln, och det finns mängder av tekniska dumheter i koden för WordPress. Mer om det vid ett senare tillfälle, kanske?
2010-11-26 00:00:00, Mattias Lindholm, www.xertoz.se
¬(Att tala är silver, att tiga är guld)
Ja, så var man då här igen. Det här är nu andra försöket att få igång en blogg på min nuvarande site, och antagligen det femtielfte försöket av mig totalt någonsin. Meningen är inte att den här bloggen ska bli ett fönster till mitt privata liv, så oroa er inte över att ni måste läsa vad jag skrivit om dagens diverse sysslor.
Irriterande nog, så ska den här bloggen för det mesta nog bara handla om ingenting annat än min firmas utveckling samt även diverse saker jag kan störa mig på i dagens värld. Jag har några intressanta "artiklar" spånade på, som det ska plitas ner inom snar framtid. Vem vill inte höra hur jag resonerar att diverse lagstiftningar mot digital kopiering strider mot den universella deklarationen av mänskliga rättigheter?
2010-11-20 00:00:00, Mattias Lindholm, www.xertoz.se
