Sunday, July 15, 2018

Server Side

Leveraging Linux sounds good, but how do we increase to functionality to the point where we can runn a server that competes with proprietary and costly Microsoft Server services like Active Directory, Windows SQLServer, Remote Desktop Protocol, MS Exchange, and etc?

First: We need to define the functions of a server for a Business, particularly a SME-level organization that cannot leverage scaling costs of tech, but still need networking functions.

  1. Authentication/ Directory: IT administrators and management need to be able to control, and track the different permissions users on the network have, without having to configure individual clients' security settings.
  2. Email Routing: routes incoming email to each individual user on your directory (routes emails that go to _____@example.org to a specific user in the example organization).
  3. File Sharing: This is the biggie in SMEs. Files need to be accessible to multiple users in the organization. Flash drives just don't cut it.
  4. Database. If the organization does any operations at all, it must maintain records of clients, vendors, employees, inventories, products, sales, and many more. The easiest way to manage these is by using a SQL-based database management tool on your server.
  5. Web Services. If you are running a website, it has to route to a server in order to retrieve the data that is displayed on the browser.
  6. Peripherals:
    • Print server: Most printers nowadays can connect directly to the network and are designed to be plug-and-play. Unless you have an old printer that needs a network driver to work on a network, a print server is unnecessary.
    • DNS server: If you are a SME, your ISP will provide DNS services automatically. Unless you have a couple of IP destinations that you want to name, it is unnecessary.
    • DHCP server: DHCP assigns dynamic IP addresses to machines connected to the network. Again, this is provided by your router/ modem that your ISP provides. This is unnecessary unless you want to manually setup your own IP addresses.


For network mapping services: NMAP
Install NMAP - this is equivalent to a IP Scanner. Use:
sudo apt-get update
sudo apt-get install nmap

To do a fast scan on an IP range,
nmap -F 192.168.1.1-254

NMAP Cheat Sheet
  • https://hackertarget.com/nmap-cheatsheet-a-quick-reference-guide/

For remote desktop services:
For Remote Desktop (For remote users, and remote technical support), AnyDesk and Teamviewer can be downloaded and used for free (Personal use). For remote desktop for remote users, one can utilize the RFB protocol through RealVNC Open, an open source, free, compatible program used in VNC (Virtual Network Computing) to share screens.

What is the LAMP solution stack?
LAMP : Linux, Apache HTTP server, MySQL relational database manager, PHP programming language.
This solution stack uses the open-source components above to operate servers, not limited to hosting web services, mailing lists, database management, and user interface (GUI).
  • https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-16-04

Ubuntu Server
The Ubuntu Server Version is free, like Ubuntu to download and install onto a server machine/ cloud server. It does not come with a graphical user interface, and most commands are done in the terminal.


PostgreSql


Leveraging Linux to Alleviate Costs in a Medium Sized Enterprise

To Install Linux, we use Ubuntu (supported by Canonical), which has 18 month support for updates and 3 years for Stable Releases.

The reasoning we use Linux over other OS's and specifically Ubuntu is:
  • Linux (and Ubuntu) is free and open source. Windows typically runs for $100+.
  • The User Interface (UI/ GUI) has improved to the point where for seasoned computer users, it is self explanatory to perform basic functions
  • There is an answer for everything on the Linux forums, and is one of the most active communities that can and will help with any issues.
  • Most issues can be fixed on the command line, which expedites fixes.
  •  Ubuntu is developed by Canonical, who offers free support, and is a major player in the open-source software field.
  • Ubuntu is less memory and processor hungry than Windows, and can improve hardware efficiency by up to 50%. This saves hardware that may otherwise need to be retired.
  • Ubuntu can be configured to have built-in encryption, as well as not having user data being sent to a corporation like Microsoft. It also has built in malware detection.

You can download an Ubuntu installer from any browser by Googling it and download. It can be mounted on a USB driver (preferably over 2GB). Note: this will format the drive and erase all other data on it.

After installing Ubuntu, run a system update to ensure all software are up to date. You may have to use a wired ethernet cable to start the configuration process.

Update Drivers:
  • Wifi Adapters: Laptops have built in WiFi adapters that will not work by default. To check the device name, type "lspci" in the console, and network controllers will appear.
  • Update the driver for the given adapter. My device used BroadCom BCM4312, and the kernel source (broadcom STA driver) is installed by the following:
    • sudo apt-get update
      sudo apt-get install bcmwl-kernel-source
        
      
      
      Go to: System->Administrator->Additional Drivers(Hardware drivers)
       
      Wifi will now appear in  top right panel
Restart Ubuntu with "reboot" command as necessary. Do this with any other drivers for Graphic Cards, sound cards, any USB devices, and printers.

For Printers:
  • Go to Setting -> Devices -> Printers. This should list all the active printers. 
    • If you don't see your printer, or if the printer was not set up properly, hit "Additional Printer Settings"
    • The printers on Localhost will be listed, and you can manually set them up. If the driver is not installed, Ubuntu will automatically detect and update drivers when connected to internet. Print test page to confirm.

Firefox should come pre-installed as the default browser, and it works well. You can browse Facebook, Youtube without problem, with most websites phasing out Flash Player requirement. It used to be that Flash needed to be installed for Youtube.


Install the following software from their respective websites.
  • LibreOffice. This is the free, open-source office that works just like MS Office.
  • VLC Player. This app plays all music, video, DVD, and other media files. It is also free and open source.
The following are also available for free download and use on Linux Ubuntu, if you use them:
  • TeXStudio. LaTeX editor, builder, and viewer.
  • OBS Studio. For Streamers on Twitch/ Youtube/ etc.
  • Code::Blocks. IDE for C++ programming
  • Eclipse CDT. Another IDE
  • Android Studio. To build Android Apps.
  • RStudio. For data analysis.
  • GIMP: not quite Photoshop level, but definitely a strong contender

Ubuntu client versions comes in a variety of "flavors" to aid in specific functions:
  • Kubuntu. KDE Plasma Workspace, for a stylish workstation environment.
  • Lubuntu. Lightest, fastest version of Ubuntu that uses LXQt environment
  • Xubuntu. Lightweight, configurable environment.
  • Ubuntu Studio. Directed at audio and video content creators and enthusiasts.

Anything other questions you have has most likely been asked. Use Google.

Wednesday, May 16, 2018

A Note on Efficiency at the Passport Office

This note was written on March 13, 2018, after I arrived home from the passport office in Yankin.


Anyone who’s been at the passport office in Yangon this year knows how horrible the wait is- multiple lines spanning the entirety of the floor space, humidity and temperature similar to a “lit” fraternity party, instructions are unclear on what documents they need, and what they do.

You may think it this service is free, hence all people of age 18+ in Myanmar are swarming over to the cities in hopes that they can catch the next plane abroad, to a better life. The reality is- the passport costs about 30000 ks. takes at least 2 whole dedicated days, in addition to ~2 weeks of wait time to complete if you don’t use “the fast lane”.

Problem: there are too many people applying for passports at the moment.

Fix: this is what we call excess demand in our field. 25000 on paper sounds expensive; it is approximately a quarter of the median monthly household income in Myanmar but it seems to be a price at which people are more than willing to pay. If they increase the price to 40000 ks, it creates an opening for people who would value the passport 15000 more to price out the ones that value it at or around 30000. Efficiency is improved because those that use their passports efficiently can now easily pay a slightly higher price, without having to wait in line with the other person who will likely never use their passports (and only got it because it is not costly). On the other end, this also keeps some workers inside the country. 

Problem: passports take too long to get

Fix: The only documents they need when renewing a passport are: old passport, household registry, National ID card, and multiple photocopies of all the former. What if the passport office equipped itself with 15 computers and a database. A desktop costs $300 and a server costs ~$3000. Outsource the processes to computer stores all around the country. Have people send in those documents for review through an online form that is reviewed on a computer. If there are any discrepancies on the application, reject it instantly and put the liability on the applicants. It’s not that hard to scan and upload a couple papers.

Problem: people who want to go “the fast lane”.

Fix: everyone already knows you can get your passport in a day if you pay ~$200. Why not just make it official? Have an official “express” service that charges 120,000 ks that can get your passport renewed in 5 days, and an “emergency” service that needs to be approved by the head of the office that can get you a passport the next day for ~300,000 ks. It saves us having to waste time and be subtle, and gives the government some extra revenue through utilizing a more gradient payment scheme. I personally spent around 30-60 minutes of an officers time just to do it the fast way, when I could’ve just given them the premium price over the counter, and he could’ve used that time to do actual work. Justify the higher cost as a efficiency price to process the application faster.

Problem: but we don’t have the money to make changes!

Solution: I’m sure it’s not hard to make your friends like Tayza or Zaw Zaw divest some of their equity and buy (Myanmar) government backed bonds instead of taking their cash off-shore. The extra revenue from a higher fee (like 40000) would be more than enough to cover for the initial investment.

Potential problem: you may be saying my solutions don’t leave any monies for the officers and that they need tips to survive.

Fix: 1. They chose a government job to make this country a better place, not for money.
  1. If we save money for the government and improve efficiency, maybe the employees can get paid better. (Fucking genius)


Summary: switch the application to an online form. All people need to come in and do is:
  1. deposit 40000 ks at the front counter. (Or more if you want it faster)
  2. Obtain a unique application code, which is your identifier for the rest of the process.
  3. Use that code to record your fingerprint and take a picture.
  4. Go home (or to a Internet shop) and fill out the application online, uploading all documents.
  5. If everything goes well, a pickup date will be set and the applicant just picks it up at the date.
This application increases efficiency twofolds- a higher cost disincentives people to leave the country, reducing brain drain and human capital loss. It also increases revenue from both the standard process, and the fast lane. There will be only one spot for payment collection, taking away the inefficiency of having to deal with add-on costs. Government can use this revenue to compensate the workers for their loss of illegitimate income. These fixes eliminate the long lines and unnecessary bureaucracy that is this current system.


To the policy makers: these are very doable, with only potentially positive results. If you don’t implement any of these, I take that you’re bluffing when you say you want development and change. Enjoy the free consultation. You’re welcome.
"