Welcome to My Webpage

Dion Baldsing

This webpage displays my portfolio of programming skills and development throughout my CMU journey.


☆ GitHub Profile

☆ LeetCode Profile

☆ LinkedIn Profile

☆ Personal Resume

☆ My Future Course Plan

Course Schedule

☆Who is Randy Paush and what was he known for?

Randolph Federick Paush was a famous Computer Science professor at Carnegie Mellon University. He was a pioneering educator who had the ability to bring together people of different abilities to work in the computer science disciplines. He was also known for his commincative lectures on learning computer science in a different more engaging apporach that achieved global success and results.


☆ key take aways from Randy Paush's Time Management lecture

• Setting clear goals and realistic ones. The emphasis on this aspect shows how making precise goals for the future can motivate and inspire you to become that person.

• He talks about the importance of scheduling yourself. Being organized and prepared can go a long way in achieving priorities and keeping a rigid structure.

• "Dead Time" making the most of it.

• "Time Boxing" strategy to staying focus and engaged in what you do.

• Trying as much as you can to automate certain tasks that take precious time. Trying to be efficient like a program to maximise the time you have to spare as it adds up.


☆ Prof Hammoud Cloud Computing

What is Cloud Computing?

• Cloud computing refers to utilizing remote servers over the internet to store and manage data, run applications, and access resources.

Is cloud computing a new technology per se? In other words, what are the unique technology features of cloud computing, if any?

• Cloud computing is not relatively new technology however its features of being able to access resources or information stored online on any device or even collaboration is what makes it a game changer.

What are the three major cloud service models?

• Infrastructure as a Service (IaaS) providing fundamental resources, Platform as a Service (PaaS) offering development tools, and Software as a Service (SaaS) granting access to software applications.

Name at least 3 real-world domains where the application of cloud computing was (or can be) very enabling and effective.

• streaming platforms such as YouTube or even Instagram can be used as an online cloud storage for personal images or even videos. These can be viewed later at any time and simply require a profile.

• Academic institutions can use cloud computing to store certain materials for students to access such as google drive and other forms of collaborative apps such as docs and numbers for student interactions.

• Aviation industry such as pilots rely on updated airport charts that are stored on the cloud and secured to ensure validation.

What is the economic/business model of cloud computing?

Cloud computing software’s sometimes rely on a subscription-based form of income that provides larger storage and additional features such as large scale downloads.


☆ Omar A Khattab Seminar

• Large scale NLPs . basically its about searching relevant words from character and large word sets. Used in large language models such as chat gpt to produce relevant results to the query that is formed.

• The process of the baseline ..25 model uses a cross encoder where queries are matched with documents. However more modern models sperate the tracks of queries and documents where they don’t directly interpolate with each other however are connected at the top of the tree.

• ColBERT v1 model was very successful in making sure that the latency of large scale searches were competitive in speeds and also quality of the search results. The main drawback seen in this version is that it uses a lot of storage in RAM for pre computing the data / information sets. ColBERT v2 was simply ColBERT V1 but much more efficient and compressed data easily. .

• Residual compression was used and for example Colbert v1 took approximately 650 Gb of RAM to precompute the documents whereas ColBERT v2 took only 16 GB which was incredible.

• Conclusions are that this project is still going on as there is always a race in producing more affordable , efficient algorithms and techniques in language models.

☆ Prof Oflazer NLPs

1. Name 3 applications on Natural Language Processing.

• Chat bots (chat gpt), speech recognition (Siri) and speech recognition.

2. Select three words in your language and for each word try to separate into its internal component. (e.g for English If I chose unbelievable I would break it as un-believ(e)-able).

• For English :- inseparable = in – separate – able

•Pineapple = pine – apple

•Nevertheless = Never – The - Less

3. Select three sentences in your native language (but please write it in the closest latin transcription). YOur sentences should be around 10 words. Translate these sentences to English) Indicate which words or small groups of words translate to which words or groups of words in Eglish translation.

• Sinhala:- Mage rata Lanka , sundara sithuwayak

• English:- My country is Sri Lanka , a beautiful island.

"Mage" translates to "My."

"rata" translates to "country."

"Lanka" remains the same in English.

"sundara" translates to "beautiful."

"sithuwayak" translates to "island."


• Sinhala:- Mage Amma gedara naha

• English:- my mother is not at home.

"Amma" translates to "Mom."

"gedara" translates to "home."

"naha” translates to "is not there."


• Sinhala :- Mama Kukul mus aahsai

• English:- I love chicken

“Mama” translates to “I”

“Kukul mus” translates to “chicken”

“Aahsai” translates to “love”

4. How many interpretations are there for the following English sentence "Time flies like an arrow" Write each interpretation descriptively?

• That the object time can literally fly like an arrow sent from a bow.

• Time goes quick.

5. What is the most likely word that follows “The prime”?

Number.


☆ Prof. Christos/ Theory

What is a decision problem?

• A decision problem is a computational problem that takes any input and based on algorithm creates a yes or no response to the user.

What does it mean for a decision problem to be decidable?

• A decision problem to be decidable is saying that from the given input and context of the solution a yes or no response can be crafted based on these variables.

What is the class P? What is the class NP?

• Class P and class NP are different types of complexity classes. Class P stands for Polynomial time where the solutions to such problems are very easy to solve. The NP in class NP stands for Non-deterministic Polynomial Time. The problems are harder to be solved however it is easier to be validated.

What is the intuitive meaning of the “P versus NP” question?

• P vs NP is another unsolvable question in computer science where the algorithms of both classes are tested to be as efficient as it can be. For NP its how quick the problem can be verified and validated while for P its how quick a problem can be solved.

If you resolve the P versus NP question, how much richer will you be?

• If you solve this problem perhaps there is a chance you will be rich however the greatest impact will be for its discovery and go down in tech history. It has the ability to change the way we view computer science as a whole and open doors to multiple opportunities.


☆ Prof Giselle/PL:

Why did we move from punch cards to programming languages? What does that tell you about the purpose of programming languages?

• The use of punch cards were too time consuming and had many errors if one punch made was wrong. The use of programming languages made it much easier to write code on a machine and continuously update whenever needed. This made it more dynamic compared to the static nature of punch cards.

There are hundreds of different programming languages out there. Why do you think we need so many?

• Different programming languages have their own set of features such as faster performance, ease of understandability etc. however certain domains use their own programming language such as for databases , back end development and front end development. An explicit example of this is python and html. HTML is purely a web page design language whereas python can be used for mathematical calculations and program development.

What are some drawbacks of a programming language you use? How would you like it to be different? Think of specific examples.

• The drawback of python is simply that at times it is extremely slow as compared to other programming languages such as c or c++.

If you were going to create a new programming language, how would you start? What do you need to define?

• We would have to define the core functions of certain features and design a framework on how the language works. Creating a global dictionary of keywords can also be used as functions for the user to interact with.


☆ Prof Riley/Security:

☆ The Qatar National Bank breach

What did attackers break into?

• The attackers broke into a data dump worth 1.5 GB of data that contained many sensitive data on expiration dates, pins and also documents of the government defense etc.

How did the attackers break into it?

• The attackers mainly used phishing techniques to steal data from customers to then go ahead with the break.

Who was impacted?

• The government and other banks were impacted from this event which could have also resulted in a loss of capital along its recovery process.

How was it investigated?

• QNB had initiated an internal investigation and also cybersecurity firms to help understand what caused the attack and what can help reduce such events from happening in the future.

☆ RasGas Virus Attack

What did attackers break into?

• The attackers used a virus to deactivate their office computers.

How did the attackers break into it?

• The attackers had used a virus software that circulated through emails an ended up affecting a computer at the RasGas company. This virus spread to all other connected devices which resulted in the breach.

Who was impacted?

• RasGas and other firms from Saudi and America had suffered significantly where email systems were disrupted and other services were on hold.

How was it investigated?

• No official documentation of the investigation could be found however it is possible that other security firms and defense ministries have investigated the cause of the attack and looked into ways of improving their cyber security.


☆ Prof. Gianni/Rob&AI:

How do you define AI?

• Artificial Intelligence is the use of neural networks to build intelligence off a machine. The machine though intricate and deep networks be able to learn and develop its sense of understanding of a particular task.

Can you name at least three different sub-fields of AI?

• Machine Learning, Natural Language Processing (NLPs), Robotics

AI has been around since about 70 years so far. Why is it booming right now?

• The main reason for AI to be booming is because of the rise and application of machine learning in the industry. This is also due to the advancement in computer software and hardware capabilities.

Can you name at least three application sectors where robots are being largely employed? What are the reasons?

• Robots are used in space exploration in the form of droids, bots etc. This is because robots can gain access to inhabitable places where humans cannot. This can be used to collect essential and important data too.

• Robots are used in manufacturing factories because it is much more cost effective in the long run and can perform redundant tasks much more efficiently.

• Robots are also used in online customer care where it already has access to certain queries that can simply be generated and sent to customers to be assisted at short times when on demand.

Can you identify three major challenges for a wheeled autonomous robot performing a 24h surveillance task in a large facility? (e.g., something like Mall of Qatar)

• Charging stations and power usage could be a common challenge for people to ensure this is a more efficient and cost-effective way of surveillance.

• Robots should be able to move swiftly and across different floors in the mall to ensure surveillance is carried out properly.

• Robots should also be able to detect If there are specific emergencies that need specific instructions to be carried out such as a theft or even a fire.