What happened to RSS? 

אני זוכר שבעבר, RSS היה משהו. לכל אתר שמתעדכן קבוע ומכבד את עצמו היה RSS. עדיין, לגדולים, יש אבל… זה כאילו שלאנשים פחות אכפת.

אני צריך לעדכן את הרססים של IGN כל כמה חודשים. אני צריך להכריח את YouTube בשביל לקבל רסס. יש אתרים שאנשים פרטיים הקימו להם רסס לא רשמי. ויש לי רססים שלפעמים פשוט נשברים בלי הסבר.

אני קצת מתגעגע לזמן בו הקמתי את הבלוג הזה. הכוונה שלי הייתה שיהיה לבן אדם אתר שבו הוא יכתוב מה שעולה לו בראש וכל מה שבה לו להגיד, הבמה הפרטית שלו, וכל מי שמעניין אותו, ירשם לרסס ויקבל עדכון כשיש במקום שנוח לו.

ומשום מה, פרחו כל הרשתות החברתיות והרעיון הזה הלך לאיבוד.

אני קצת חושש ממה שאולי יקרה לרסס. כי, לדעתי, זאת עדיין הדרך הכי טובה לבן אדם הקטן להתממשק עם זרנוק המידע שהוא האינטרנט.


Posted in IT, Practice, Thinking Out Loud by with 1 comment.

An Attempt at Change

נחתנו אתמול ב-5:30 בבוקר. בגלל שקניתי שני בקבוקי סיידר, היינו צריכים להכניס תיק לבטן המטוס. זאת אומרת, גם לחכות עד שיוציאו אותו משם במקום מיד לצאת החוצה. שזה מבאס. אבל לא נורא. הצלחנו לתפוס את הרכבת של 6:00 ולהגיע הביתה בסדר גמור. זאת אומרת, מעין הייתה דיי גמורה. אבל אחד היתרונות של שינה פוליפאזית היא שאחרי תנומות באות והולכות במטוס, מוקדם בבוקר הייתי סבבה.

אז קפצנו אל יערה לאסוף את מוצארט. האיחוד היה מרגש. לא יכולנו להישאר יותר מדי כי מיהרנו אז אמרנו שלום, תודה ולהתראות ויצאנו לדרך שוב. וכשהגענו הביתה, היה בערך מספיק זמן בשביל להתרחץ ולצאת שוב לדרך. כי היה לי ראיון אם ראש הצוות VR/AR של קופמדיה, איפה שעמית ורומן עובדים.

אני חשבתי שמדובר בראיון “שלום, שלום” ולא ציפיתי למרכיב טכני. אם כן הייתי מצפה אז הייתי פותח את הקוד של הפרויקט שלי שוב ונזכר מה עשיתי שם. כנראה שלא אצליח למצוא את השינויים שעשיתי לקוד של Oculus אבל לפחות את הרעיון הכללי והמימוש של המשחק עצמו הייתי יכול לזכור. לכן, קצת השתנקתי כששאלו אותי שאלות עליו אבל ניסיתי לענות כפי יכולתי. ואני בדרך כלל נתקע כששואלים אותי שאלות שנראות לי מאוד פשוטות. כי אם שואלים דבר כמו “איך מחשבים אורך של וקטור תלת ממדי?” אני מתחיל לתהות אם אני זוכר את המתמטיקה שלי כמו שצריך. כי (x^2+y^2+z^2)^(1/3), לא? אבל אני מקווה שהעברתי רושם מספיק טוב ושהם לא חושבים שאני אידיוט. יהיה ממש מגניב ללכת לעבוד שם.

וחשבתי על זה עוד קצת היום במהלך מסיבת הפורים שלא ממש היה לי כוח להשתתף בה. אני עייף? אני פשוט בקצה החבל? האם שנתיים וחצי זה המקסימום שאני מסוגל כרגע להשקיע בפרויקט אחד? כי אני באמת מוצא שפחות אכפת לי. זאת אומרת, אכפת לי שהמשחק יצליח ושהחברה תצליח אבל אין לי כבר כוח להתקטנן על מימוש או לוודא שדברים נעשים כמו שצריך. אני יותר בסדר עם זה שאנשים יכשלו לבד ויראו שדברים נשברים ולא לעצור אותם לפניי.

אולי מה שאני צריך זה פשוט הפסקה רצינית.


Posted in IT, Life, Work by with no comments yet.

Don’t You Just Love it When a Plan Comes Together

Yesterday was interesting. I was doing my thing, as usual. I knew there were problems with the latest store version we uploaded but I was practicing not shoving my nose in to things I probably shouldn’t. It happens to me quite a lot that I try to help but I really shouldn’t, for various reasons. So, this time, I did that.

I don’t know exactly how much time has passed but I noticed the rest of the team wasn’t getting any progress. So, I joined in, took a look at what they were doing, suggested some things that didn’t quite help, and then decide to investigate it on my own. I pushed some breakpoints in the flow and spent about 15 minutes looking at exactly what was happening. Then I said: “I can tell you exactly what is happening!”

Then everyone crowded around my station while I explained why it happens and what I think we should do to fix it. The response was stunned silence. So, I said “No objections or suggestions? Ok, I’ll do what I said.” Then some stayed to watch. :)

It doesn’t happen all the time. But it’s fun when it does.


Posted in IT, Programming, Work by with comments disabled.

מה המצב?

מה קורה? מה שלומכם? אני סבבה. יופי. אז מה הולך עם החיים שלי…

מעין התחילה עבודה חדשה. חלק מהחבר’ה שהיא מכירה מהחברה הקודמת. חלק חדשים. משרדים יפים בבית רובינשטיין ובינתיים היא מאוד אוהבת את המקום. אני מקווה לטוב.

ב”7 יסודות” אנחנו ממש לפני גרסה חשובה ולכן עובדים קצת עד מאוחר. לפי מה שמוסרים לי מההנהלה, המספרים שלנו טובים. המשחק מתפקד סבבה ויש הרבה שחקנים. אנחנו כרגע מתפקדים קצת מעל מה שמצפים שזה נהדר. אבל זה קצת מפחיד אותי שהולכים לדרוש מאיתנו יותר, משהו אולי לא כל כך מציאותי שלא נוכל לספק. אבל לדאוג לזה לא יעזור לי. אז ממשיכים.

ה-Global Game Jam 2016 הוא עוד שבוע וחצי. התכנון שלי הוא לבנות סוג של סיפור אינטראקטיבי ב-Twine, מין 80 Days רק עם גודל שיותר מתאים ל-Game Jam. כי Twine מאפשר לכתוב סיפורים אינטראקטיביים אבל יש לנו גם הרבה טווח לעשות דברים מתוחכמים יותר. אפשר באמת לתכנת בו, הוא תומך ב-JavaScript ו-CSS ואני חושב בעיקר על פונקציות האקראיות שלו ואיך אני יכול להשתמש בהן כדי לזרוק על השחקן אירועים שונים בכל פעם. פירסמו כבר את ה-diversifiers ואני חושב כבר שאני יכול לקלוע לכמה מהם. את העיקר של המשחק אני אבנה סביב הנושא אבל זה אני כבר יודע שאני רוצה לעשות. אני מחליט את כל זה מראש כי אני רוצה הפעם לעשות משהו משלי, משהו שאני אעבוד עליו בלבד (אולי אם קצת עזרה חזותית או קולית אם אצטרך) כדי לראות מה אני מסוגל לעשות רק בעצמי וגם כמה אני מסוגל למתוח את השימושיות של Twine. נתראה ב-Wix, מי שמגיע.


Posted in Gaming, Geekdom, IT, Life, Maayan, Practice, Thinking Out Loud, Work by with comments disabled.

How NOT to Give Everyone a Fair Salary

Company Testing Standardized Salaries Is Struggling

I think what they did there was just plain wrong. The way to equalize salary considerations is not to give everyone, from the newest hires to the CEO, the same salary. That is a sure fire way of causing discontent.

What they need is to give the newest, lowest ranking hires a fair base salary and then, from there, calculate everyone’s salary based on veterancy, responsibility and, most importantly, merit.

And I think it’s ok for people to know their co-workers salary. There’s no reason I can think of to hide salaries that is for the employee’s benefit. If there’s a difference between my salary and someone else’s, I want to know that, if I have a higher one, there’s a good reason for it. And if there isn’t, maybe I shouldn’t get one. And, if it’s lower, I want to know what that other person did to ingratiate themselves upon the management so I can do it too and get paid better for it.

For example, if someone is getting paid more than me because they have a year of company time on me, I think that’s fair. If they get paid more because they are very reliable and help whenever asked, I want to do that too. If they get paid more because they handle 3 times more responsibilities then me… well, there’s not a lot I can do about it but that’s fair.


Posted in High-Tech, IT, Life, Practice, Thinking Out Loud by with comments disabled.

פיגוע תחת השראה חזותית

יש לי הרבה דיונים על מוסכמות קוד. יש לי שיטה מאוד מוגדרת וקפדנית לאיך אני כותב. אני לא עושה את זה כי ככה למדתי. אני לא עושה את זה כי זה נראה לי יפה יותר. אני עושה את זה כי זאת הדרך היחידה שבה הקוד נראה לי מסודר. כי אם הקוד מבולגן, זה מפריע לי לחשיבה. וזאת דרך עדינה להסביר את זה.

חשבתי על זה עכשיו אחרי שהסתכלתי על הכיור. אין לי בעיה עם כיור מלא כלים. יש לי בעיה עם כיור מבולגן. יש סיפור ישן של דיוויד לנגפורד בשם “סוגים שונים של אפלה”. הוא מתאר משהו שנקרא ‘פיגוע תחת השראה חזותית’. מדובר בתבנית מתמטית ששוברת את האזור החזותי של המוח וגורמת לסוג של שבץ מוחי. תבניות מסובכות מאוד גם גורמות למוות.

אז אני לא מקבל שבץ מכיור מבולגן או קוד מבולגן אבל זה מאיט ומסבך אותי. ואני לרוב לא מסוגל לקלוט אותו או לעבוד איתו אלא אם כן אני מסדר אותו שיראה כמו שצריך.

בגלל זה אני עושה את זה. לא בגלל חשיבות עצמית או התנשאות. אני עושה את זה כי אני לא מסוגל אחרת.


Posted in IT, Life, Programming by with comments disabled.

היה הייתה 2014

אני לא אוהב את חידוני השרשרת של סוף השנה ואני גם לא ממש בקטע של החלטות תחילת שנה אבל אני כן יכול להסתכל אחורה על השנה שהייתה ולבחון אותה מעכשיו. דבר ראשון שקל לשים לב הוא שהייתי הרבה פחות פעיל פה מבעבר. זה בעיקר כי הייתי מאוד עסוק בעבודה שהתחילה רק חודש קודם ורציתי להשקיע. אבל בואו נראה מה היה.

  • 01/01 – טוב זה לא ממש 2014 אבל התחלתי עבודה חדשה בדצמבר 2013 וזה דיי צבע לי את כל השנה. תמיד רציתי לעבוד על משחקים ועכשיו קיבלתי הזדמנות. זה לא הפרויקט האישי שלי אבל רק לעבוד בתחום, לצבור נסיון, הבנה וקשרים, זה כבר נהדר בפני עצמו.
  • 24-26/01 – הלכתי ל-Global Game Jam הראשון שלי. תמיד חששתי להצטרף אבל בהשראת עמית, ראש הצוות שלי, הלכתי ועבדנו ביחד עם אנשים מגניבים והיה כיף והוצאנו משחק מגניב.
  • 31/01  – יום אחד כשחזרתי מהעבודה, שני מטורפים החליטו לרדוף אחרי במעלי ובמורד חיפה עד שנכנסתי לתאונה והם ברחו. זאת הייתה חווייה לא נעימה ששיבשה לי את הכמה חודשים שאחרי אבל אני חושב שעברתי את זה.
  • 09/02 – הבלוג של Unity הציג את המשחק שאנחנו עשינו בתור דוגמה ל-GGJ. הבלוג! הרשמי! של Unity! והמשחק! שלנו! מוצג ראשון! אההההה! כן. זה מגניב.
  • 23/02 – עברנו רשמית למרכז. אני מצאתי עבודה במרכז ומעין לומדת בפתוחה אז זאת הייתה ההחלטה ההגיונית. דירה אמיתית שנייה שלנו ביחד וכרגע אנחנו עם 2 מתוך 2 בעלי דירה נחמדים. מחזיק אצבעות.
  • 15/03 – הצלנו כלבה משוטטת ברחוב. היא ברחה ממסיבת הפורים של אחד השכנים מבנין ליד והיה קצת קשה להשיג את הבעלים אבל למחרת בבוקר הכלבה הוחזרה לביתה בשלום. זה מרגיש טוב מאוד לעשות משהו נחמד בצורה אלטרואיסטית. צריך לעשות לעתים יותר קרובות.
  • 26/03 – חגגנו 24 למעין. לא רציתי לעשות משהו ממש גרנדיוזי אבל לא רציתי לאכזב. אז אספנו כמה משפחה וחברים ועשינו מסיבה קטנה. אני חושב שהיה טוב. :)
  • 15/04 – פעם ראשונה שהלכנו לפסח חברים. היה ממש כיף ואני עדיין מתבאס על זה שהרגשתי רע ופספסתי את התמונה הגדולה. אבל עדיין היה כיף גדול ולא הייתי מוותר.
  • 18/04 – חגגתי 30, המספר הנחמד והעגול. זה נשמע מבוגר אבל אני ממש לא מרגיש ככה. אני מרגיש נהדר ואני חושב, שסך הכל, החיים שלי נהדרים.
  • 12/05 – לוג’יטק קנו אותי. בכסף. בעכבר. יצרתי קשר עם שירות לקוחות כדי לנסות לתקן את העכבר שלי. שלחו לי עכבר חדש. לוג’יטק מגניבים!
  • 19/05 – המצאתי משחק קוביות. בסדר. הוא לא מדהים אבל אני חושב שזאת התחלה טובה. עוד אין לי משחק קלפים אבל אני עובד על משחק הלוח.
  • 080911/05 – חשבתי כמה מחשבות עמוקות. כל כך עמוקות שאני חולק אותן שוב עכשיו.
  • 04050610/08 – איבדנו חברה ותיקה, אחות גדולה. בור שאי אפשר למלא. כואב נורא. סליחה.
  • 18/08 – כן, אני רואה צורך לציין את זה. ממה שאני ראיתי עד אותו הרגע, מעין שיחקה קצת משחקי תפקידים כשהייתה קטנה, כמה משחקי לוח או מחשב מאוד מסוימים שאהבה וזהו. אבל כאן ראיתי את הניצנים לכך שמעין הופכת ליותר מרק Gamer-Adjacent. ואני אוהב את זה. למרות שהחפיפה לא גדולה, אני אוהב את זה שיש לה עכשיו Wishlist.
  • 16/09 – הבלוג חוגג 9 במתכונתו הנוכחית.
  • 21/09-08/10 – יצאנו לטיול באיטליה. היה ממש כיף. הרשומות קיימות הן רק דורשות עריכה ויצאו בחודש הקרוב.
  • 07/12 – הלכתי לראשונה לכנס השנתי של עמותת GameIS. הייתי יכול לעשות יותר טוב אבל התחלה טובה.

חוץ מזה, דברים שלא מצוינים פה, הוא שדיימוס הלך לישון וסירב לקום. אני עדיין בודק את האפשרות להחזיר אותו אבל יכול להיות ש-4 שנים זה כל מה שהוא היה מסוגל לתת. אנחנו מאוד קרובים לשחרור של המשחק. אני לא יכול להגיד מתי בדיוק אבל הלחץ בעבודה בהחלט עולה. התחלתי סמסטר חורף בטכניון עם שניים מתוך שלושת הקורסים האחרונים שאני צריך לעשות. אז אני אפילו עוד יותר לחוץ. ועם כל הלחץ והרבה פחות זמן, לא ממש יצא לי לעבוד על פרויקטים פרטיים למרות שיש לי כמה רעיונות להמשך של כמה מהם. ואני מבין שהמצב הזה כנראה ימשך עד הקיץ, עד שאסיים את הסמסטר השני ואת התואר. גם הלכתי הרבה פחות לכנסים. הייתי רוצה להשתתף יותר, הייתי רוצה להריץ משחקים או לכתוב משחקים או שניהם לביגור אבל יכול מאוד להיות שאני בקרוב אצטרך לבחור בין קהילת המשחקים לקהילת המד”ב ומי מהן תהיה ההשקעה העיקרית שלי ומי רק תחביב צדדי.

אני קצת מדוכא כשאני כותב את זה ואני לא בטוח לגמרי למה. אולי זה הלחץ, אולי זה העובדה שמחר האזכרה לאסף. אבל במבט לאחור, חוץ מדבר אחד מחורבן ברמות שאי אפשר לתאר, השנה שלי הייתה דווקא דיי טובה – מוצלחת ונהדרת אפילו. אני מתגעגע לקרן. וגם לאסף. אבל אני גם בטוח ששניהם, אם עדיין היו פה, היו שמחים במה שהשגתי ולא היו רוצים שאסוג בגללם. אז את 2014 אני כנראה אזכור בגלל אותו אירוע אבל אסור לשכוח שסך הכל, זאת כן הייתה שנה טובה.


Posted in Gaming, Geekdom, High-Tech, Humanity, IT, Life, Maayan, Me, Philosophy, Role-Playing, School, Stories of My Life, Thinking Out Loud, Work by with comments disabled.

Corporate Hijacking

Microsoft has been recently accused of trying to hijack another company’s private property, NoIP’s DNS service. While that is definitely not a good thing, if looked at just on its own, it is important to remember that Microsoft is, currently, one of the biggest and more active players in the fight for internet security and safety. They are running multiple operations to take down botnets and disable malware running systems all over the globe.

So, dear legal system, don’t let a company order another company to hand over property but let’s try and do accommodate the, maybe self-appointed, sheriff trying to bring order to this wild west country we call the internet even if they do need a slap on the wrist every once in a while to figure out how to actually get things done properly.


Posted in IT, Less Interesting News, Practice, Thinking Out Loud by with 3 comments.

Selling Overhead

Is what this Gamasutra article called the recent trend in game development to sell “the things that usually end up on the game studio’s cutting room floor”. It’s talking about things like Early Access, selling the game while it’s being developed, and mostly about selling the “Prologue” to Metal Gear Solid V and selling access to Double Fine’s Amnesia Fortnight.

First of all, I don’t think it’s really surprising in this age where Publishers are mostly going the way of the dinosaurs and more developers retaking control of their creations and trying to hit the audience directly, saving money while still trying to make hiqh-quality (i.e. expensive) titles. The money has to come from somewhere.

The writer stresses the Double Fine and Metal Gear Solid V angle a lot, Double Fine selling access to their prototypes (things we usually couldn’t, and probably shouldn’t see) and Metal Gear Solid being split into (at least) two parts with the first one serving as “prologue” whose content might or might not later also appear in the full game, but I would like to point out two counter examples and say that, once again, when satisfaction is concerned, it’s all about expectations.

painting-analogy

The current customer expects that when she pays 60$ for a new game it will contain at least 10-20 hours of meaningful gameplay. Whether this is reasonable considering what we pay for movies, music, etc… is a different discussion – this is what we currently expect. In the days of the first StarCraft it was reasonable to sell a main game for 60$ and then an expansion with more missions and story for 30$. We then evolved the model of selling the main game for 60$ and tiny bundles of story/gameplay/extras for 5-15$ and lately we’ve also added alphafunding. Some of these models seem weird but, again, it’s all about expectations. And also honesty and transparency. (Here come the two examples).

  1. Decent Early Access Games/Developers – Look at Mojang, Vlambeer and all the others that decided to go the alphafunding/early access route but did it candidly. Mojang sold Minecraft from the very early (and sometimes broken versions) but they were honest about it. They said the game is in development, it might break, and you’re actually paying for the game’s development as it is being developed. The customers were promised that, they were promised that the game will be updated and improved and they won’t have to pay more despite the initial entry fee always increasing. And fucking hell, that model works for them. Vlambeer went with Steam Early Access for Nuclear Throne. They were upfront in saying that the game is in development, it will be cheaper after it’s done and there will be no sales or bundles until release. They said that this is only for those who want to support the developers during development. And they live-stream development and upload a new build every week. Which is awesome. They promised specific things and they deliver on what the customers expect from that.
  2. Stoic went a bit of a different route with The Banner Saga. They started from a Kickstarter campaign, raised funds and used those funds to start development. Roughly a year later, they released Factions, the Free-To-Play competitive version of the game featuring their beautiful art but mostly consisting of just the combat aspect of the game. They did that because they saw that development will take longer than previously expected and they wanted to put out something that people can play. But, mostly, they did that so they could get more help (than just backers) with fine tuning the combat aspect (the main game loop in The Banner Saga) and bring it to a mirror polish, thus making the final game better for everyone. But, they released it free to play. Meaning, you could play the “no-campaign” version of the game for free and if you wanted to, you could sink some money into it to fund development of the full game. They told gamers what to expect and they delivered on those promises, honestly and ethically. Then, another year later, you could buy the campaign-full, complete version of the game for a very competitive price of 25$.

Conclusion: I don’t think there is a right or wrong way to develop or sell your game. The only wrong thing is no fulfilling your customer’s expectation. Yes, sometimes those expectations are not up to you and you can roll with it or sit in the corner and cry. But, if you notice it, the only times gamers rise in uproar about how a game is sold/played/whatever is when it doesn’t fulfill expectations. I don’t know exactly how the Metal Gear Solid V thing is going to work but if Ground Zeros is selling for 30$ and The Phantom Pain will sell for 60$ and Ground Zeros won’t deliver at least half the satisfaction of The Phantom Pain and/or The Phantom Pain will actually contain some, half and especially most or all of the gameplay of Ground Zeros, you can definitely expect an uproar.

 


Posted in Gaming, IT, Practice, Programming, Thinking Out Loud by with comments disabled.

My Coding Conventions

When I run my own company or lead a brand new team, everyone will follow coding conventions. My Coding Conventions!

Here they are, to the best of my current knowledge and by probable order of importance.

  1. Every method will be documented! That includes purpose, parameters, proper usage, etc…
  2. Every property will be documented! Yes. Exactly the same.
  3. Every class will be documented! Especially about recommended uses and where it is suppose to go.
  4. Every public field which is not incredibly obvious will also be documented!
  5. Every conditional block will be an actual block, with parentheses. Even if it’s one line!
  6. Starting parentheses always get a new line! Exception: if it’s a conditional or property and it fits in one line.
  7. Every method shall appear in full before its first use. This makes the code more readable! Do It!
  8. Design for any part of the program should be ironed out ahead of time and with as much detail as reasonableness allows.
  9. To be continued… (Suggestion welcome)

Posted in IT, Practice, Programming, Thinking Out Loud by with 6 comments.