I had been looking into a software performance problem for a few hours now and had decided to call it quits for the day. I turned off the lights and climbed into bed, hoping to get to sleep early for a change. I hadn’t been in bed five minutes when I thought about something I hadn’t tried yet. I picked up the tablet that was beside my bed and did a few google searches and soon I was back on my desktop trying out some parameters I hadn’t tried yet.
Ideally one practices some sort of compartmentalization. There should be a clear boundary between work and non-work and you can set work aside as needed. It’s something I’m really bad at, as seen in the example above.
It’s something that needs a certain kind of discipline, and we all know discipline isn’t my strong point. Working from home and with everything in the cloud and accessible online makes that discipline even more important. And even more difficult! It’s a lot easier to create separation when your work stuff is only accessible from the office.
My tendency for multitasking probably doesn’t help either. Even when I’m playing a video game or out on a walk, I can still get distracted by notifications on my phone. I’m used to it and I expect it and I don’t really want to disconnect – so maybe I’m kind of asking for it too.
The other day I was supposed to take a day off from work and was planning to chill all day and maybe work on some personal projects. Still I ended up replying to a few emails and discussing some stuff on slack even while I was playing Persona 5. It wasn’t much work time but still drove home that I was so bad at compartmentalization.
Software development is also like any other professions that involves creative problem solving. It’s hard to set aside the problems you’re trying to solve. You can’t just suddenly quit on a problem at a certain time. They tend to keep spinning around in your head and will pop back into mind at random. And once a new idea or solution does come to you, one might think it wise to just write it down and pursue it later, but then you risk losing flow. Flow is a valuable commodity in professions like mine, so you kind of want to ride along with it when it decides to come.
Supposedly you should be setting aside specific times of the day for when you hunker down to work. That way your mind gets conditioned that “this is work time”. And it makes it easier for you to create that separation between work time and nonwork time. And hopefully flow comes to you at the proper time instead of randomly while pooping. That’s not always easy though, and not always viable due to scheduling concerns. But it should be a step in the right direction. Hopefully it’s not too late to learn that kind of discipline.
I haven’t had much time to write recently. Been busy. (I’ll write about that some other time.) But I’ve kind of been posting regularly on this date for a while, so here we are.
Ah, time. And the inexorable passage thereof. There’s some kind of big milestone for me in around three hundred and sixty-five more solar cycles. Well, I don’t personally consider it big, since that’s kind of arbitrary. But as people are wont to say, life begins… maybe I’ll save that for next year.
This year, kind of at a crossroads. Considering where to go and the way forward. Trying out some things. Figuring out what’s important and what’s not and what one would be willing to give up.
In all honesty there’s a good chance that in another year’s time, I still wouldn’t have figured anything out. Maybe that’s what life is though. A constant struggle of figuring out where to go next.
Last week the local gaming shop had the Steam Link on 70% discount so I figured I’d give it a try. We recently got a new TV at home, so I was eager to try out some Steam games on the big screen. If you’re too lazy to click the link above, the Steam Link is basically a set-top box that streams your gameplay to a TV via HDMI, allowing you to enjoy your steam games from the comfort of a couch. There was also a sale on Steam controllers, but I had a variety of controllers at home to try out, so I passed on that.
The Steam Link came in a box that was bigger than I was expected. The box looks neat though:
And this is the only device I’ve ever bought that came with a bunch of adapters for different socket types:
The device itself is about as large as external hard drive:
Usage is fairly simple. You hook it up to the TV with an HDMI cable. You connect controllers or dongles via USB. Some controllers like the Steam Controller have wireless support. Network connectivity is through a LAN cable or via wi-fi. When it starts up, it searches your home network for computers running Steam, then it gives you a code that you type into the computer to grant access. Once that’s done, you can stream your games to the TV.
I first tried it out with a Logitech F710 Wireless Gamepad that I’ve had forever, since that’s explicitly meant for games on Windows. I plugged the dongle into the USB slot, but had some trouble at first with the controller not being detected or taking multiple button presses to respond. I wondered if it was lag due to a poor network and worried that I had just wasted some money. It turns out however, that the batteries on the controller simply needed replacing haha.
When streaming to the Link, Steam uses Big Picture mode:
I tried a couple of games I got during the recent Steam sale. I’ve already sunk in at least 8 hours on Ori and the Blind Forest (that includes a lot of dying repeatedly!). This game is a Microsoft exclusive, so I’d never have been able to play it from a couch without the link. A very pretty game too.
I also wanted to test if an arcade stick would work. I had a PS3 Hori arcade stick at home, so I used it to play a bit of Guilty Gear Xrd:
I was also able to test that the PS4 controller works when wired. Supposedly the PS4 controller and the WiiU Pro controller can both work wirelessly, but I had both the PS4 and the WiiU in the same room so I couldn’t try it without activating the consoles.
I’m using a LAN cable, and there’s no noticeable lag or anything. Only annoyance so far is that the controller seems to become unresponsive if I bring up the Steam overlay midgame and try to go back to the game. (If the Link becomes unresponsive, you can still go to your computer and turn it off from there.) All the processing power still comes from your computer, so enjoying your Steam games on the TV still depends on having a decent computer.
While a lot of my Steam games are also available on consoles I have, it’s often cheaper to get them on Steam, so I’ve been looking towards restricting my console purchases to mostly exclusives only. Having the Steam Link helps with that, since I can still enjoy my Steam games on the TV and comfortably from a couch. All in all, a great experience, and a pretty good buy I think.
Last weekend I watched Aureus Solito’s movie Pisay at the UP film center with a couple of friends (both of whom were my Pisay batchmates of course).
For the uninitiated Pisay is the nickname for our beloved Philippine Science High School. It’s a system of government-run schools with a special focus on science and math subjects. There’s a highly-competitive entrance exam and we’ve always been told that students who make it in are considered the “cream of the crop.” (I don’t know that I’ve ever heard anyone outside Pisay say that though.) Students are given full scholarships and a modest stipend, and are required to take a science course upon graduation.
The movie was pretty good. It was more or less four short stories tied together, each one focused on a different year and following a particular batch of students through their stay at Pisay. Each story covers themes central to the Pisay experience: the difficulty of getting in, balancing academics and relationships, stipends, homesickness, trying to pass and failing, wanting to take a non-science course, and so on. The movie takes place during the school years from 1982-1986, basically during the fall of the dictatorship. So it also gets to cover some of the major events during that period and the senior year story has a stronger focus on activism.
I suspect that the movie will be a lot more appreciated by people who actually went to Pisay or people who lived through the 80s. (I’m not sure if teenagers in the 80s really used that much slang though.) I’m also not sure how accurate it is as a reflection of what it was to be a Pisay student in the 80s – some things felt deliberately dramatized for the film’s sake. (That’s fine though.)
This movie hits all the nostalgia points even though it takes place in a completely different time period than when I was there. I look back fondly on my days in Pisay and consider that an important formative period for me. It was challenging and rewarding and it was great to be among peers that shared many of my interests and many lifelong friendships were formed. Maybe someday I’ll write about the experience more, but probably one blog post wouldn’t be enough.
Random thoughts while walking at night: The structure of government can be a bit analogous to the structure of a software development project.
The Constitution is like the requirements for a project. It’s kind of high-level and (I believe) shouldn’t be too detailed. Supposedly the requirements are written by the client. For a country like the Philippines the client is “we the sovereign Filipino people”.
Slight tangent: I used to know this guy who was one of those rabid “we need to amend the constitution” types and he asked me to review a “mathematical model to track the budget as a function of tax collection and monetary policy” that he wanted to include in a proposed new constitution. I told him I didn’t believe such detailed rules shouldn’t be in the constitution – that would unnecessarily tie us down to a specific model that we may or may not regret later on. I ended up declining to help him with his strange hobby.
The Legislative branch are the analysts. They make the detailed specs/laws to define how we’re going to satisfy the requirements/constitution. In a real project, the client usually signs off on the specs. In government, we supposedly sign off when we vote for the legislators.
The Executive branch are the developers. They’re responsible for implementing the specs/laws in order to fulfill the requirements/constitution. They can decide the technical approach to use, as long as they satisfy the specs and the requirements.
The Judiciary is the QA, they review the work of the developers/executive and make sure they’re following the specs/laws and adhering to the requirements/constitution. Sometimes they even have to review the specs/laws themselves to make sure they aren’t contradicting the requirements/constitution.
Sometimes a project is so large and you need to form smaller subteams to specialize in different areas or modules. That’s called Federalism. Or maybe local government.
Sometimes one person handles specs, development and QA. That’s called dictatorship.
Sometimes people want to rewrite or amend the requirements/constitution. That’s called agile development. Or maybe scope creep.
Sometimes the bureaucracy needs to be reorganized to be more efficient. That’s called refactoring.
The big difference between government and software projects is that in software projects, team members are selected based on meritocracy. In theory at least, you choose the best people for the job. In government, who gets the job is determined by who is best at bamboozling the largest number of people to vote them in. Maybe someday we’ll get a meritocracy in government too, but until then I’m probably sticking to software development.
Some time ago a friend from high school invited me to her daughter’s debut. And I had to proxy for her daughter’s ninong and maybe give a few words on what it means to become an adult. My first two reactions were (1) wow I’m so old one of my batchmates has an eighteen-year-old daughter; and (2) what the heck would I know about becoming an adult? (I guess (3) was “oh, it’s a debut, so it’s formal and I have to dress up? I hate dressing up.”)
I mean, don’t get me wrong. I certainly consider myself an adult. But I have no idea when that transitioned happened. It’s not like when you turn eighteen you get some kind of brain implant that magically tells you how to live life and be independent and get a job and be responsible and do your taxes and all that stuff.
If anything, I would say “becoming an adult” is a continuing task that keeps going on even when you’re nearing the big four-oh and beyond. I guess the zeitgeist is already aware of this though, given how we’ve coined the word “adulting”, which basically means doing stuff that makes you feel like an adult. Like going to the bank. Or signing contracts. Or even dressing up to go to a formal event.
While we were having dinner at the event, I jokingly said I should just give a message like “fake it til you make it.” I basically feel that’s what most of adulthood is: bumbling along until you figure out what the heck you’re doing. When you’re a kid you look up to the grown-ups who can go out and do anything they want and confidently do all these jobs and they know everything. But when you grow up you realize that’s not really how it works – most of the time all the adults are struggling through life too, trying to figure out whatever thing they have to do that day, or even just trying to make it to the next paycheck. And you’re definitely going to miss being a kid. Maybe that’s the sign that you’re already an adult, when you already miss being a kid?
I ended up reading a few words from the actual ninong, so I didn’t get to give my own adulthood message. One of my other batchmates gave the debutante a copy of The Art of War as a gift, with the message that adulthood is basically warfare so she should be prepared. While I agree with that sentiment somewhat, I think for me the most important thing about becoming an adult would be learning to find your own voice and identity. That means figuring out what’s important to you and what values you hold. Being an adult isn’t easy, but knowing yourself in this way gives you a framework to guide you in your adulting decisions.
Unfortunately, our in-house web framework already had a long history and most of the devs in our company were used to it. The company had tried using a different Java-based framework stack before. It was back in the days when things like Struts, Spring, Hibernate, etc were beginning to ramp up. It kind of ended in disaster – that project ended up taking a lot of effort, had a lot of technical problems, and so on. I believe this gave the company leadership the impression that investing in other frameworks are not worth the risk and effort. It’s a form of Not Invented Here syndrome.
I admit there are some advantages to having your own in-house web framework. After all, all the popular web frameworks today started out in-house in some company and later they decided to release as open source. And many companies do fine using in-house frameworks. Using an in-house framework means full control over the behavior. And you can tailor the functionality and coding style to your internal processes. In fact it can be a good value add to your company if your in-house framework did something better or unique compared to open source ones.
But there are also significant advantages to using open source frameworks. Maybe I should have used some of these during discussions when I was there:
With an open source framework, we wouldn’t have to maintain the core functionality of the framework ourselves. We wouldn’t have to maintain the full stack ourselves. We would only need to maintain any customisations and extensions we write for our own needs. For our in-house web framework, every so often we’d spend some effort to come out with a new version with incremental improvements. With an open source framework, we could instead redirect that effort to higher-value work.
There’s more learning material available online, and they don’t have to be maintained in-house.
There’s a wider base of experience to draw from. For our in-house framework if you encountered a problem requiring deep framework knowledge, there were only a handful of high-level experts in the company. For an open-source web framework, that expertise is widely available on the internet through sites such as Stack Overflow.
Having knowledge/experience in established frameworks means your company can get more contracts. You can take on projects that use those frameworks. You don’t have to spend proposal space trying to convince clients that your in-house framework is great. With open source frameworks you can reuse marketing copy by someone else!
Working on well-known, established frameworks is better for your developers career-wise. It gives them more knowledge that could be transferable to other jobs. While this isn’t a benefit to the company per se, it will make the company more attractive to developers. It even allows the flexibility of hiring developers experience with that framework.
There are some disadvantages too of course:
As mentioned above, there is time and effort involved in learning a new open source framework. This effort is mostly for the experienced developers – for new hires they will need to learn something regardless
Having an in-house team developing your own framework means you have a core set of developers experienced in the full stack. Reliance on open source frameworks means most of your developers won’t be familiar with the low level details.
In the end, there’s no guarantee that using an open source framework will be painless or be better than developing one in-house. So I can understand the decision to stick with what you know. But for me as a developer, I feel that it’s more rewarding to be exposed to different frameworks.
In fact I wrote this post because recently someone asked me what my “go-to web framework” was and I said I didn’t have one. I’d rather be flexible enough to learn and work with any existing framework. In our industry where change happens quickly and can catch you by surprise, I think that flexibility is a much more valuable asset to have.
“Grabe naman kasi ang ginagawa nyo sa pasahero”(This is too much for the passengers), she said. She was a short, old lady trying to get to the front of the bus so that she could disembark. But like most city buses in Metro Manila during rush hour, the bus was filled to the brim with people, many of them standing tightly packed in the aisle, holding on to handrails on the bus ceiling or the nearby seats. Her young son, a short boy of maybe 14 years, weaved through the standing bodies packed in the bus’s aisle to retrieve a plastic bag they had brought on board.
It took them more than five minutes to disembark, even with the driver getting off to help them with their bags. City buses usually have a conductor to collect fares and assist passengers, but at this stop the conductor was way at the back collecting fares.
It was a Saturday early evening. A couple of hours earlier at around 4pm I had decided to take a bus from the Mall of Asia in Pasay. I was headed home to Tandang Sora in Quezon City, on the opposite side of the urban sprawl that is Metro Manila. I had the option of a short jeepney ride to the MRT station and taking the train, but I was rather sleepy so I decided to board a city bus even though it would probably be a longer ride. “It’s Saturday,” I said to myself. “Surely there won’t be much traffic.”
I got on board a Fairview-route bus waiting near the mall. Since this was the first stop for the bus, I was able to get a seat up front near the driver and the bus doors. I paid my fare (P40 apparently) and put my head down on my bag, hoping to catch some zzzs along the way. I assumed the ride would take around an hour and a half.
I managed to get a little sleep, but even when I woke up almost an hour later, the bus had just managed to make it past Buendia. That was only around a third of the trip. Looks like I was in for the long haul.
By this time, the bus was already full. No more seats were to be had and any passengers that boarded would have to stand in the aisle. “Diretso lang po tayo sa likod!”(“Let’s move to the back please”), the conductor would urge, to free up space for disembarking passengers near the front. But for some reason or another, Metro Manila commuters always prefer standing around near the bus doors, which means that area is always the most crowded. Pretty soon, new passengers are no longer able to move to the slightly more spacious far end of the bus. Many of the passengers are women, some senior citizens even. I think about getting up from my seat to let someone else sit, but like many times before I come to the conclusion that being a rather large person, it’s far more space-efficient for me to be in a seat than blocking the aisle.
“Grabe naman siksikan dito!”(“It’s too tight in here!”), one of the male passengers complains. But the conductor is not taking any of their complaints. “Ganyan po talaga pag rush hour! Kung ayaw nyo po ng siksikan magtaxi kayo!”(“That’s how it is during rush hour! If you don’t like it, you should take a taxi!”)
He’s not wrong. Almost always during rush hour, city buses passing through the middle parts of Metro Manila’s main thoroughfare EDSA are filled to overflowing with people. Many non-airconditioned buses will even have people standing in the open doorway, hanging on to the bus railings for their lives. Pick-up points near the middle of the route, such as Megamall in Mandaluyong, are often battlegrounds where commuters struggle and elbow each other to get into standing room positions on already crowded buses.
Most commuters have little to no alternative. While the MRT was supposed to supplement public transport along EDSA, most of the time it is crowded as well and these days prone to breakdowns. Most of the stations often do not have working escalators so many commuters, especially older people, are hesitant to use it. Most of the poorer city denizens can’t afford to take taxis, but even then they are in short supply. Even if you are lucky enough to find a taxi, many drivers are selective and will either ask for exhorbitant ‘tips’ or outright deny fares who want to go too far away or through too much traffic. Uber’s surge prices get insane during rush hour as well.
A lot of people, especially drivers of private cars, complain about city buses, and justifiably so. Drivers and conductors are paid on a “boundary” basis. To maximize their earnings, they need to get as many passengers as possible during their trips. This means many of them are overzealous and often cause small to large traffic jams in their pursuit of more passengers. They have no concern for overloading laws (which are rarely enforced anyway) and will pick up passengers even if there’s no bus stop. At least as long as there are no traffic enforcers around.
Every so often there are suggestions to reduce the number of buses on EDSA. Anyone who’s seen how full these buses get during rush hour should realize this is a ridiculous proposition. Despite being undisciplined drivers, EDSA buses are far more space-efficient in terms of the number of commuters they are able to ferry across the metropolis, as compared to the large volume of private cars on the road. What’s needed is more professional bus services. Drivers and conductors should be paid a fair salary so that they don’t chase after passengers so ruthlessly. But such proposals never gain headway – the bus franchisees often complain that they are barely making enough money as it is.
I’ve been a commuter for most of the past two decades, and I’ve steadily seen the congestion for city buses and EDSA traffic go from bad to worse to much, much worse. These days I try to avoid commuting too far (I’m lucky to have that option). But on days like these when I’m crisscrossing the entire metropolis, I’m reminded of how bad the situation is. The congestion on EDSA is representative of the congestion in Metro Manila itself.
It’s almost 6:30pm before I make my stop at the Quezon City Memorial Circle. The bus ride took nearly two and a half hours. The old woman who takes my seat is grateful for the reprieve. A few minutes before me, the man who had been arguing with the conductor disembarked, and they exchanged another set of bitter words.
“Gago, tatandaan kita! Di na ko nagpapasakay ulit ng ganyan!”(“Fool, I’ll remember you. I won’t let you board next time!”), the conductor shouts after him. He turns to the rest of the passengers and reiterates that they shouldn’t complain about the congestion, since that’s how it always is. I remarked, as I got ready to get off the bus, that perhaps that man and that old lady weren’t regular commuters, and some of the other passengers chuckled.
Sadly, this was the reality that Metro Manila commuters had to live with. It’s a reality that can perhaps only be addressed by a concerted effort to decongest the metropolis and to professionalize and modernize the public transport services. There are no quick fixes or solutions coming forth. So for the foreseeable future, this is what we live with.
I don’t really play Magic regularly anymore; Last year I only played Standard because I was Q’ed for the WMCQs. But when there’s a local Grand Prix, oldies like me crawl out of the woodwork and try to believe we can still do well in a tournament with minimal prep. Grand Prix Manila 2017 was to be Standard format, held on June 2-4, 2017, at the SMX convention center.
At the start of the year I already knew I would be playing in this year’s GP Manila, but since I hadn’t played Standard for well over a year, I didn’t really know what I would be playing. But I started keeping track of what decks there were in the metagame. Sadly, the meta was not so good, with an oppressive combo deck dominating the field. Like many others, I assumed there would be a ban at some point, which means I couldn’t commit to a deck too early.
I only decided on a deck after the B&R announcement shortly before the release of Amonkhet. At that point, looking at the available cards we had, I settled on trying to put together the Temur Marvel deck. It took me a couple of weeks to put the deck together, then I ran it through an FNM and a couple of other smaller tournaments. I was satisfied enough to play it for the grinders on Friday, Day 0 of GP Manila.
Day 0 – Friday, June 2
As I’m from Quezon City, the venue is quite far, and to be honest I was a bit stressed out at the idea of commuting to SMX three days in a row. But still I went. I started out determined to play as many Standard grinders as a I could on Day 0, both to up my chance of earning byes for the GP and to give me more familiarity with my deck. Unfortunately, things did not go so well. I ended up 2-6 for the day, not even earning any prize points. I played quite a few mirror matches, something I hadn’t been able to do in my previous tests. It gave me some insights so even though I came home late that night, I stayed up late tweaking the main deck and the sideboard based on what I learned during the day.
Day 1 – Saturday, June 3
I woke up early and took the train. Saturday was a bit lighter commute than Friday, but not by much.
I opted to play with Trackers in the main because I found my mirror match losses from Day 0 often came to a Tracker sticking on the opposing side. I also dropped down to 3 Ulamogs because it felt like I often got stupid hands with 2 or 3 of them.
Sadly, most of my tweaks didn’t matter much as I performed terribly. Here’s my day 1 record:
R01 1-2 LOSS vs UR Kefnet Both games he won, he had the turn 3 Kefnet which I had no answer for.
R02 1-2 LOSS vs RB Hazoret. This deck is great and fun, and the matches were really close, but eventually I ran out of Marvel spins
R03 1-2 LOSS vs UW Flash. I had a Marvel, but it ran into a Spell Queller. In desperation I tried to kill the Queller while he was tapped out, spun into a second Marvel, spun again into nothing.
R04 2-0 WIN vs Monoblack Zombies
R05 0-2 LOSS vs Temur Marvel. Made the mistake of spinning on my turn when he had 6 energy. My ulamog died to his ulamog
I feel like I didn’t make any particularly bad plays during the first 3 rounds. The Marvel spins just didn’t work out for me. I may have been already starting to feel the lack of sleep during round 5 so that’s a thing. (I immediately went home to sleep after dropping.)
Their decks did seem particularly tuned towards beating Marvel. That’s one of the big downsides of just netdecking the dominant deck – everyone’s gunning for you. The lack of prep time was really hard on me too. The last time I did well in a Grand Prix was GP Manila back in 2015, and that time I had been playing Jeskai for months before the GP. Unfortunately I had been caught between a rock and a hard place – if i had assembled a deck months before it likely would have been Saheeli combo (since I used to play Twin in Modern), which meant I would have been the victim of the bannings. Ah well, can’t dwell on the past too much. Have to note it for next time.
Will there be a next time? On the bus ride home I was so dejected at the poor performance I wondered if I was just done with Standard forever. But I suppose it depends largely on the metagame; Marvel was pretty bad whether you were playing it or against it. In any case, I’m also somehow qualified for Nationals this year, so at the very least I’m playing Standard again in September. (Mostly because I want the promo Inkmoth Nexus)
Day 2 – Sunday, June 4
I decided to come back to just play for some prizes in side events (and also because I had to return some cards I borrowed). Day two had one of my favorite side events: Chaos Sealed! I played this after scrubbing out of GP Singapore 2015, so this may become a day two tradition for me lol.
For Chaos Sealed, I got dealt the following boosters: EMA, MMA2017, BFZ, SOI, Dissension and Torment. I think I got a pretty good pool, value-wise:
My pool was kinda light on removal, but I had like a Llanowar Elf and some basic land search and three signets, so I decided to just ramp into some Eldrazi! A number of people were shocked that I decided to run the Ulamog, and a friend even told me I’d never be able to cast it. I sent him a picture of that Ulamog ready to attack for lethal on the first game in the first round.
I went 3-2 with my pool. My losses were to a Deadeye Navigator (that guy is a nightmare to get rid of) and to a deck that was almost entirely removal (I died to a Control Magic’ed Benthic Infiltrator. More like InfilTRAITOR amirite?). Not bad. I won enough points to split a box with some guys, and the FOW/ Ulamog meant I came out ahead value-wise. The sad thing about these events is that they’re among the last to finish, so the prize wall is kinda cleared out by then and we weren’t able to get a Kaladesh box, had to settle for Amonkhet.
Competitively the GP was a bust for me, but at least I came away with some swag and some packs. I’m also planning to attend GP Singapore in December this year, and that’s Sealed/Draft so hopefully I do better there. Until then, thanks for reading!
So last April my friends and I took a second trip to Japan. This time we mostly stayed around Tokyo, while taking a few days off in-between to visit Fuji, Hakone and Nikko.
I like Tokyo, so I’ll talk about Tokyo for now. I’ve only been here twice, but I could imagine myself living here for an extended period of time. It solves my top three problems with Metro Manila: overly hot weather, poor transportation options, and poor internet.
Both visits I found the temperatures to be within the generally agreeable range of around 5-25 degrees celsius. The low end is slightly too cold, but manageable. Of course, I haven’t experienced actual Japanese winter, so it’s probably colder then.
Transportation is great and easy! There’s like twenty lines of trains or such (OK, I didn’t really count, but there’s a lot!) and a lot of buses too. The great thing is that the trains and buses run on very exact schedules. At trains stations or bus stops you’ll see a list of times to the minute telling you when the next train or bus will arrive. That kind of thing would be unheard of in Metro Manila.
One of the downsides is that the train lines can get a bit confusing. They’re not all interconnected either – there’s some lines that are part of the Tokyo Metro, while some are part of JR (Japan Rail), and so on. It can cause some confusion for example some places might have both a Metro station and a JR station, and they might not be connected. The staff are always very helpful in the train stations though, feel free to ask them how to get to a particular station. They will try their best to help even if their English isn’t the best. Most stations will also have helpful signage showing maps and routes and stuff, and the trains themselves will have announcers telling you what the next station is.
For paying your transportation fares, there’s a few options, but for me the best one is to use an IC card – these are reloadable cards that you can use on any train or bus in Tokyo. (I have no idea what IC means.) You can get one at the airport when you arrive – there’s two providers, it’s either Suica or Pasmo and you can reload them at any train station. There’s also an option to get a 2-day or 3-day unlimited metro pass, which is a great idea if you plan to travel around Tokyo many times within a short period, but it only works with Metro lines which can be a bit restrictive.
Internet in Tokyo is obviously very good of course. If you’re staying at an Airbnb, try to get one that provides you with a mobile wifi unit you can use while wandering about. Being a tourist these days is a lot easier with internet, given google maps and similar apps. If you don’t have a mobile wifi unit, you can also leech free wifi from any 7-11 or train station!
The city is also very friendly to people who like to walk – during this last trip I managed to walk from Asakusa to Akihabara at one point. While wandering around if you get hungry there are always shops nearby and lots of vending machines to get a quick drink from.
What to do in Tokyo though? If you’re a gamer or an otaku, there’s obviously Akihabara – on each trip I went there more than once just to browse the numerous shops selling comics, toys, figurines, games, and so on. I would spend even more time there if I could read Japanese of course! (Working on it!)
Aside from that, there’s a few tourist spots you can visit in the city proper. Some of the places I’ve been to include:
Senso-ji temple in Asakusa. This is a good place to visit mainly because Asakusa is a good area to stay in, as many of the places to visit are easily accessible from Asakusa station
Tokyo Skytree in Asakusa. I only climbed the Skytree during the second trip, it offers a great view of the city.
Tokyo Tower. It’s smaller than the Skytree, but I’m sure fans of Rayearth will want to visit it haha. I visited it on this last trip to see One Piece and Final Fantasy exhibits.
Shibuya crossing. It’s a famous crosswalk for some reason, and there’s also a statue here of that dog Hachiko. There’s also a lot of shopping places nearby if you like that kind of thing.
Even if you don’t have much you want to visit in Tokyo proper, it’s a great base of operations that you can use to visit nearby areas. That’s what we did during this trip. You can leave most of your luggage in storage – there are coin lockers in the major stations – and just take an overnight bag to visit nearby tourist spots like Fuji or Edo wonderland in Nikko.
I’m not sure when I’ll visit Japan again (I don’t think going there for the Olympics is a good idea), but I wouldn’t mind staying in Tokyo again, that’s for sure.