Skip to main content

Posts

Running Oracle Outsidein Technology (OIT) in Docker

Oracle Outsidein Technology provides a set of tools and SDKs to convert many forms of data to readable documents. It also holds data extraction and reduction capabilities. Used by multiple firms and tech fronts for more than 3 decades, OIT is a vast product here to stay for a long time. Here, I made a starting attempt on using OIT's Image export using docker. Created a small docker file with the oracle-java8 base image, loaded the image export jars and dependencies, created a few mounting volumes and ran it on a single sample pdf file. An enriching and learning experience for me and my father all the same. This blog shows the steps I took to get image export working on my machine. Prerequisites Docker (to be installed on your machine, you can go to docker's website and download it for your OS windows/linux/mac) OIT Image Export SDK (Get it here ) The image export SDK also contains some sam...

Divyaksh Expense Manager

The expense manager apps on the play store are either paid or have in-app purchases or contain lots of advertisements which gets a little annoying. I wanted to make an app that is simple as all the other apps on the play store but be customised as per my usage. Many of the apps on the playstore are either very limited or too bloated (they could have just made tabbed screens 😠) Anyways I wanted an app that could note down the expenses I made and also separate out mode of payment (like cards, cash or online wallets). a feature that is missing in the apps available today Storing a snapshot of the bill is an added bonus. But in my house the whole month's grocery is bought at once from the supermarket. So, the bill is quite huge (its an extremely long piece of paper) and cramming that into one picture would be difficult. So, how about a video of the bill or a panoramic shot of the bill (that would be a lot of work even it is possible). I could also incorporate a message filter tha...

Raspberry pi Stock data collection

I made a stock collection program on my raspberry pi that web scrapes data from a website to give me stock updates every 5 minutes. All the details are stored as a file system and it is managed solely by a python program and crontab. The script is in python 3 and it is used to track down prices of BSE (Bombay stock exchange) in India. The whole script is available on my GitHub repository. Link: To run it just place the script in a folder and add the cron entry as stated in the README.md python3 stock.py ^BSESN The data is first extracted via BeautifulSoup and the following tags are title = ['h1', {'data-reactid': '7'}] quote_header = ['div', {'id': 'quote-header-info'}] present_price = ['span', {'class': 'Trsdu(0.3s)'}] opening_price = ['td', {'data-test': 'OPEN-value'}] previous_close_price = ['td', {'data-test': 'PREV_CLOSE-value'}] day_range_pric...

NAS (National Achivement Survey) data extraction

I had recently been to a datathon (A hackathon related to data science) in PES University, Bangalore. There my team was given a task to extract data from the National Achievement Survey - 2017 conducted by NCERT. NAS collects data about CBSE schools across states and districts of India to collect data about student achievements and their overall reports. This data is present in PDF formats. We were tasked to extract data from PDF and tabulate it. $ pdftotext is a linux utility to convert pdf to text. By supplying a -layout option the default layout of the data is mostly preserved. I made a python script (pdf_convert.py) to convert the pdf data to text files sequentially. Next I made a script to convert the text files to csv data. So each text file was turned to a record (row) in the csv file. Here is a snapshot of the directory structure of PDF file that we got. . ├── Andaman & Nicobar Islands │   ├── Andaman │   │   ├── Andamans Class - ...

Reinstalling GRUB on unallocated free space

PROBLEM I had accidentally deleted the partition containing GRUB (/dev/sda1) due to which my Linux Mint installed on /dev/sda5 stopped booting.  Solution So, I wanted to reinstall GRUB and edit it to boot my Linux Mint. I wanted GRUB and booting sectors on /dev/sda1 while my OS was in /dev/sda5. (I am using these as my defaults for this blog. Please use fdisk -l to figure out your partition names and numbers). Getting a live USB : I created a new USB bootable drive of KDE Neon (It is a derivative of Ubuntu).  Installing GRUB : After booting KDE Neon, I opened the terminal and created the partition using fdisk. Fdisk :  $ sudo fdisk -l Disk /dev/sda: 232.9 GiB, 250059350016 bytes, 488397168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x6c778d7d Device     Boot     Start       ...

Ubuntu 16.04 LTS installed on pen drive

The new Ubuntu 16.04 LTS released in April 2016 is a great improvement over its predecessors. Its much faster and more fluid than any Ubuntu or Lubuntu distribution I've used. To install ubuntu on a pen drive you can go through my previous posts on this blog. But Beware: Ubuntu 16.04 takes a lot of time to boot from your USB HDD (pen drive). Although, shut down time is very less. I do not know why does it freeze after the GRUB. if anyone has a fix please do let me know.

Configuring VNC server for your raspberry pi 1,2,3

Raspberry pi is finally a linux running in a small hardware and running a vnc server on it wouldn't be a problem. Well, I wanted to use my laptop's screen and and keyboard to control my raspberry pi. The only method I found viable is by running a VNC server on my raspberry pi and connecting to it via a VNC client. VNC servers allow remote access to GUI of a given computer. To start a VNC server on your Raspberry pi you first need to install a VNC server on it:      $ sudo apt-get install tightvncserver Now run the service by typing the following:      $ tightvncserver Type a password (keep it simple). To run the server type:          $ vncserver :1 Just keep it at :1 because :0 is occupied by the default screen. Now, install a VNC client on your laptop (e.g. RealVNC or TightVNC). To connect to the pi type the IP address of the pi followed by :1 and enter the password you gave to your pi.  ...