All public logs
Combined display of all available logs of Soma-notes. You can narrow down the view by selecting a log type, the username (case-sensitive), or the affected page (also case-sensitive).
- 21:13, 22 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 19 (Created page with "==Notes== <pre> March 22 -------- Integrating webview with HNTree we have composable functions that we can copy over, but how should the app actually work? Should start up as a web browser with a URL bar, with a button to the side of the URL bar that says "History". Clicking on the button will switch the view to the History view. If the user taps on a specific past URL, visit the page (potentially with confirmation) What's the strategy? - first, change the webvie...")
- 15:33, 22 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-22 (Created page with "==Discussion Questions== * What problems are Cassandra and Dynamo built to solve? How do these problems inform their design? * What are the key technical insights or algorithms behind Cassandra and Dynamo? * What infrastructure do Cassandra and Dynamo seem to rely on? How does this compare with the systems made by Google?")
- 03:46, 21 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-20 (Created page with "==Notes== <pre> March 20 -------- Project Proposals - if you want to re-submit, you can, and I will replace the grade with your new one - Need to finish it by March 27th - some proposals were just way too broad - need to narrow it down - some were too focused on one paper - needs to cover multiple papers - some tried to argue for a technical point - you aren't doing original research - focus on what the papers say, have a thesis about patterns...")
- 20:52, 17 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 18 (Created page with "==Code== ===MainActivity.kt=== <syntaxhighlight lang="kotlin" line> package carleton.comp2601.historyviewer import android.net.Uri import android.os.Bundle import android.util.Log import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.material.MaterialTheme import androidx.compose.material.Surface import andro...")
- 20:00, 15 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 17 (Created page with "==Code== <syntaxhighlight lang="kotlin" line> package carleton.comp2601.historyviewer class HNTree { var hostComponent: String = "" var hostSuffix: String = "" var parent: HNTree = this var children: MutableList<HNTree> = mutableListOf() var treeLevel: Int = 0 var expanded: true fun add(hostPrefix: String) { var allComponents: List<String> var component: String var child: HNTree? = null /* still have to deal...")
- 15:44, 15 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-15 (Created page with "==Notes== <pre> Bigtable & MapReduce -------------------- When you think about BigTable, focus on figure 1 (to understand what it is doing) and Figure 4 (to understand how). Remember that GFS requires structured information to be stored (because data can be duplicated), BigTable is one of the ways GFS files can be organized To what extent is BigTable a database? For MapReduce, think about the kind of tasks Google wanted to perform on its web crawls - generating an...")
- 15:35, 13 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-13 (Created page with "==Discussion Questions== * List all the terms and acronyms in the Ceph paper and discus their meaning and relationship with each other. * To what degree is Ceph POSIX compliant? Is there a cost for this? * Discuss Figures 1-3 in Crush, what does each say?")
- 22:16, 10 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 16 (Created page with "==Notes== <pre> March 10 -------- I have a hostname, want to insert it into the current HNTree - split the hostname into a bunch of components (www, carleton, ca) First, initially, we'll create a root node representing . (top of the DNS hierarchy). So that should get its own dedicated constructor. Then we'll have an add operation which will take a hostname, and it will add child hostnames add will split the hostname into its components, see if the last-most su...")
- 04:43, 9 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 15 (Created page with "==Notes== <pre> March 8 ------- Last time, we were talking about how to store web browser history so we can view it in interesting ways. class HostPart { value: String, expanded: bool, higher: HostPart?, can be undefined: lower: HostPart? } .ca .carleton .google www brightspace www mail sheets class HNTree { hostComponent: String, /* <-- "carleton" in "www.carleton.ca"...")
- 19:02, 8 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 14 (Created page with "==Notes== <pre> March 3 ------- I want to build a browser history viewer. It will allow surfing history to be viewed in a few ways: - list of pages visited (easy, dump stored history) - list "sessions" - group by what is first entered in the URL bar, whether it be a search or a direct entry of a URL - show as a grouped list (with each session collapsable) - show time of start of session, time of each subsequent request (potentially hide times)...")
- 18:17, 8 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-08 (Created page with "No in-class notes, see class video on Brightspace/Zoom.")
- 16:48, 6 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-06 (Created page with "==Notes== <pre> NASD & Tapestry --------------- What problem(s) is NASD designed to solve? What's the standard architecture for a file server? - you have a server with attached storage - that server reads storage then sends what it reads over the network to a client Limitations of this approach - bandwidth bottleneck on the server: reading lots of disks in parallel only to copy to memory then send over the network puts huge strain on server memory system - also l...")
- 04:52, 2 March 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 13 (Created page with "==Notes== <pre> Android Architecture & Security ------------------------------- * I've graded all proposals * On Friday, progress report 3 is due * If you have something to demo, please demo in Friday! What is running on an Android device? How does it compare to a regular Linux system? Android documentation uses lots of Android-specific jargon, not at all clear how it maps to more normal concepts. So I'm going to try explaining that here. First, Android runs on L...")
- 16:38, 1 March 2023 Soma talk contribs created page DistOS 2023W 2023-03-01 (Created page with "==Discussion Questions== OceanStore * What is the threat model underlying OceanStore security? * How does this compare to the threat model of modern cloud storage providers? * Would you use OceanStore? Why or why not? BOINC * What was the original inspiration for this work? * What kind of problems is this style of computing suitable for? What problems is it not suitable for? * What is the threat model for BOINC-type systems? Does this threat model make it suitable o...")
- 17:56, 27 February 2023 Soma talk contribs created page DistOS 2023W 2023-02-27 (Created page with "==Notes== <pre> Web Scale --------- * Midterm grading is ongoing, hopefully will be finished this week * Proposal deadline extended to Friday, will try to give you some material this week to help - I've been ignoring some of you on Teams, I will be replying today Up to this point in the class, we've really been focused on distributed systems for running classic UNIX-like workloads - individual developer/engineer working at a workstation on their stuff Key problems...")
- 19:47, 17 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 12 (Created page with " ==Code== <syntaxhighlight lang="kotlin" line> package carleton.comp2601.scrolldemo import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.* import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.rememberLazyListState import androidx.compose.material.* import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment impor...")
- 19:40, 15 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 11 (Created page with "Learning materials * https://developer.android.com/codelabs/basic-android-kotlin-training-sql-basics * https://developer.android.com/codelabs/basic-android-kotlin-training-intro-room-flow")
- 18:18, 13 February 2023 Soma talk contribs created page DistOS 2023W 2023-02-13 (Created page with "==Notes== <pre> COMP 4000/5102 Midterm Review ----------------------------- Potential questions * What was the vision of the creators of UNIX at Bell Labs? How did later systems violate that vision, and how did later systems from Bell Labs try to return to it? * How has the abstraction of files changed in the context of early distributed operating systems? What is a "file" in different contexts? Why has it changed? * How has the abstraction of volatile memory cha...")
- 21:36, 10 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 10 (Created page with "==Notes== <pre> February 10 ----------- Web browser with history visualization/query - understand what pages I've been visiting Potential screens: - basic web browser (where user will spend most of their time) - history viewer (text) - history viewer (graphical) How do we display web history? - basic chronological - time, web page, title Potential tasks - what websites do I visit the most? - what topics do I read about? - what authors do I read? - conn...")
- 21:02, 8 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 9 (Created page with "==Notes== <pre> Lecture 9 --------- Key challenge this semester is design as much as implementation So...I'm going to design and build an app, and walk you all through it What websites have I been visiting? - I visit all kinds of places - I don't make bookmarks - yes there is history, but it isn't easy to view - would love the browser to eventually help direct my browsing towards things I, at a high level, want to visit rather than what is most easily in "reach...")
- 16:47, 8 February 2023 Soma talk contribs created page DistOS 2023W 2023-02-08 (Created page with "==Notes== <pre> Plan 9 & Inferno ---------------- Remember that UNIX was created before the Internet, and was used to develop the Internet Plan 9 is the work of the original UNIX creators to try and make UNIX work on multiple computers that are connected via a network Discussion questions: - how is the design philosophy of UNIX reflected in Plan9? Has that vision changed? - what mechanisms did they create? Compare pipes and P9P for example Inferno was a response...")
- 16:17, 6 February 2023 Soma talk contribs created page DistOS 2023W 2023-02-06 (Created page with "==Discussion questions== * Discuss what you think was interesting about Sprite relative to past systems. What was new? What was old? * How does AFS compare to NFS, in terms of their design, implementation, and ambition? * What is the role of UNIX in the design and implementation of Sprite and AFS? * What else came to mind when reading and discussing these papers?")
- 18:58, 3 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 8 (Created page with "==Resources== Documentation: * [https://google.github.io/volley/ Volley] * [https://www.weatherbit.io/ Weatherbit] - create an account, sign up for the free plan Tutorials (From GeeksforGeeks.org): * [https://www.geeksforgeeks.org/volley-library-in-android/ Volley Tutorial] * [https://www.geeksforgeeks.org/how-to-build-a-weather-app-in-android/ Weather App Tutorial]")
- 03:21, 2 February 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 7 (Created page with "==Notes== <pre> Lecture 7 --------- For next time: doing HTTP requests & getting responses, working with REST APIs in Android and Kotlin Today: Processes & Threads in Android A process is a running program on UNIX/Linux (and Windows) - has its own share of memory and CPU resources - isolated from the rest of the system (cannot see the memory of other processes) The CPU runs a process for a while then switches to running other processes - the OS scheduler in the...")
- 19:11, 1 February 2023 Soma talk contribs created page DistOS 2023W 2023-02-01 (Created page with "==Notes== <pre> LOCUS & NFS notes ----------------- NFS: file servers & file clients (few servers, many clients) - files live on the servers LOCUS: every computer has files, not all files are on all computers - so each computer could be a server or a client - or just have local access could have replicas but logically should act like one file - so replicas have to by synchronized - did centralized sync via a designated host - all updates would go there, and th...")
- 16:34, 30 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-30 (Created page with "==Discussion Questions== * Why do RPCs require data to be copied? * Why is transparency important? Do you think it is still important? * How does SUN's RPC compare to that described by Nelson? * Why did SUN make its own RPC mechanism? * What are alternatives to RPC? * Do you think RPCs are good for security? Why or why not?")
- 20:05, 27 January 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 6 (Created page with "==Resources== * [https://developer.android.com/jetpack/compose/interop/interop-apis Interoperability APIs in Compose] * [https://developer.android.com/develop/ui/views/layout/webapps/webview Build web apps in WebView]")
- 19:08, 25 January 2023 Soma talk contribs created page Mobile Apps 2023W Tutorial 2 (Created page with "==Tasks== For this tutorial you should port RemotePicViewer from [https://homeostasis.scs.carleton.ca/wiki/index.php/Mobile_App_Dev_2022W:_Tutorial_4 Tutorial 4 of COMP 1601] to Android & Jetpack Compose. Note that you'll want to start with a local image resource, then try to integrate a remote image loading library. See the recent lectures for relevant code.")
- 16:30, 25 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-25 (Created page with "==Discussion Questions== * What is the dream of DSM? * What makes DSM hard? * Why can't we have a general solution to DSM? * Do you think we use DSM today? Why or why not? * What is unclear or confusing about DSM & the readings?")
- 16:36, 23 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-23 (Created page with "==Discussion questions== Remember, these are just to get you started. Please allow your discussion to go where it will, so long as it is somewhat related to the readings. * How distributed was the Mother of All Demos? * How distributed was the Alto? * How do these systems relate to the topics of this class? * What did you find interesting? Surprising? * Are there any ideas here that seem promising but we've "forgotten" about?")
- 20:15, 20 January 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 4 (Created page with "==Resources== * [https://developer.android.com/jetpack/compose/graphics/images/loading Loading images in Compose] * [https://developer.android.com/jetpack/compose/gestures#dragging Drag gestures in compose]")
- 17:27, 20 January 2023 Soma talk contribs created page Mobile Applications (Winter 2023) Project Guidelines (Created page with "This page contains guidelines on the class project. This page will be updated based on questions and feedback. ==Project Proposal== Your project proposal should be a relatively short document describing what you plan to do for your project. You should propose to make an original app of some kind. Make sure you propose to do something that you can complete this semester. It is fine to have optional extensions that you add if you have time; the basic app, however, sh...")
- 19:12, 18 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-18 (Created page with "==Notes== <pre> Lecture 4 --------- Ideas/thoughts from group discussion on Unix - simpler, cheaper than Multics - pipes were there at the beginning and still are used - oldest form of IPC - much less emphasis on security than now (no ASLR!) - built to be modular, easy to enhance, change - programming-friendly environment - software as composition - invented inodes, had a filesystem hierarchy (which as pretty new) - kernel, shell, utilities, interesting spl...")
- 19:09, 18 January 2023 Soma talk contribs created page Mobile Apps 2023W Tutorial 1 (Created page with " ==Code== ===MainActivity.kt=== <syntaxhighlight lang="kotlin" line> package carleton.comp2601.textanalyzer7 import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.* import androidx.compose.material.* import androidx.compose.runtime.* import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontWeight import androidx.c...")
- 18:00, 16 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-16 (Created page with "Video from the second half of class is available in Brightspace in the Zoom portal. ==Notes== <pre> Lecture 3 --------- Group reports - can be bullet points, but paragraphs are better - should be self-contained, should be readable by someone who hasn't done the readings - but you don't have to summarize the entire paper, just make the points you discussed clear Monday group reports are due Friday Wednesday group reports are due Monday (and responses are due...")
- 19:13, 13 January 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 2 (Created page with "==Jetpack Compose== * [https://developer.android.com/courses/jetpack-compose/course Jetpack Compose course]")
- 21:37, 11 January 2023 Soma talk contribs created page Mobile Apps 2023W Lecture 1 (Created page with "Video from this class is available through Brightspace. ==Notes== <pre> Lecture 1 --------- So...this class is small. Very small. - currently 15 are registered, according to Brightspace - and about half of that are here today... Because the class is so small, we don't have to have a rigid tutorial/assignment/midterm/final structure. In fact, we could do individual projects. Potential topics: - jetpack compose - gestures - web views - app permissions - app...")
- 23:38, 10 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-11 (Created page with "==Group Discussion== Today we'll be discussing the challenges in building distributed applications. To this end, we will start with the following design exercise. You'll be split into small groups to discuss, and then we'll meet together to discuss what you all found. Every group should take notes so you can write up a group report afterwards. You should also appoint someone to tell the class a 2 minute (or less) highlights from your discussion. ===The Scenarios===...")
- 21:58, 10 January 2023 Soma talk contribs created page DistOS 2023W 2023-01-09 (Created page with "Video from today's lecture is available on Brightspace, in Zoom->Cloud Recordings. ==Notes== <pre> Lecture 1 --------- What is a distributed operating system? First, it is an operating system - the code that transforms the computer that you have into the one you want to program - abstraction, resource management in the service of applications A distributed OS is one that runs across multiple computers connected via a network (or networks) So, why do we need...")
- 01:49, 4 January 2023 Soma talk contribs created page Mobile Applications (Winter 2023) Course Outline (Created page with "==Course Information== *'''Course Number:''' COMP 2601A *'''Term:''' Winter 2023 *'''Title:''' Mobile Applications *'''Institution:''' Carleton University, School of Computer Science *'''Instructor:''' [https://people.scs.carleton.ca/~soma Anil Somayaji] (anilsomayaji at cunet.carleton.ca): online by appointment *'''Teaching Assistants:''' ** (at cmail.carleton.ca): TBD *'''Class:''' Wed. and Fri. 14:35-16:25 (Jan. 9 to Apr. 12) via Zoom (see Brightspace for link) *'''...")
- 01:21, 4 January 2023 Soma talk contribs created page Mobile Applications (Winter 2023) (Created page with "==Course Outline== Here is the course outline for COMP 2601: Mobile Applications.")
- 17:42, 3 January 2023 Soma talk contribs created page Distributed OS: Winter 2023 Course Outline (Created page with "==Course Information== *'''Course Number:''' COMP 4000/5102 *'''Term:''' Winter 2023 *'''Title:''' Distributed Operating Systems *'''Institution:''' Carleton University, School of Computer Science *'''Instructor:''' [http://people.scs.carleton.ca/~soma Anil Somayaji] (anil.somayaji at carleton.ca). Office hours by appointment online. *'''Teaching Assistant:''' Nilofar Mansourzadeh (NilofarMansourzadeh at cmail.carleton.ca). Office hours TBD, online *'''Meeting Time:'''...")
- 17:19, 3 January 2023 Soma talk contribs moved page Distributed OS: Fall 2022 to Distributed OS: Winter 2023 without leaving a redirect
- 17:18, 3 January 2023 Soma talk contribs created page Distributed OS: Fall 2022 (Created page with "==Course Outline== Here is the course outline.")
- 23:23, 8 December 2022 Soma talk contribs created page Operating Systems 2022F Lecture 23 (Created page with "==Video== Video from the lecture given on December 8, 2022 is now available: * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec23-20221208.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec23-20221208.cc.vtt auto-generated captions] Video is also available through Brightspace (Resources->Zoom meeting->Cloud Recordings tab) ==Notes== <pre> Lecture 23 ---------- * Assignment 4 solutions * Final...")
- 04:40, 7 December 2022 Soma talk contribs created page Operating Systems 2022F Lecture 22 (Created page with "==Video== Video from the lecture given on December 6, 2022 is now available: * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec22-20221206.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec22-20221206.cc.vtt auto-generated captions] Video is also available through Brightspace (Resources->Zoom meeting->Cloud Recordings tab) ==Notes== <pre> Lecture 22 ---------- Today - answer questions about A4...")
- 19:55, 1 December 2022 Soma talk contribs created page Operating Systems 2022F Lecture 21 (Created page with "==Video== Video from the lecture given on December 1, 2022 is now available: * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec21-20221201.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec21-20221201.cc.vtt auto-generated captions] Video is also available through Brightspace (Resources->Zoom meeting->Cloud Recordings tab) ==Notes== <pre> Lecture 21 ---------- - Assignment 4 due in a week - ad...")
- 02:28, 30 November 2022 Soma talk contribs created page Operating Systems 2022F Lecture 20 (Created page with "==Video== Video from the lecture given on November 29, 2022 is now available: * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec20-20221129.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec20-20221129.cc.vtt auto-generated captions] Video is also available through Brightspace (Resources->Zoom meeting->Cloud Recordings tab) ==Notes== <pre> Lecture 20 ---------- 4 more classes, including today! F...")
- 00:08, 23 November 2022 Soma talk contribs created page Operating Systems 2022F Lecture 19 (Created page with "==Video== Video from the lecture given on November 22, 2022 is now available: * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec19-20221122.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/os-2022f/lectures/comp3000-2022f-lec19-20221122.cc.vtt auto-generated captions] Video is also available through Brightspace (Resources->Zoom meeting->Cloud Recordings tab) ==Notes== <pre> Lecture 19 ---------- - No class Thursday (US Thanksgivi...")
- 04:47, 22 November 2022 Soma talk contribs created page Operating Systems 2022F: Assignment 4 (Created page with "'''This assignment is still being developed.''' ==Source== [https://homeostasis.scs.carleton.ca/~soma/os-2022f/code/c3000procreport.zip c3000procreport.zip] ===c3000procreport.c=== <syntaxhighlight lang="c" line> c3000procreport.c Anil Somayaji November 21, 2022 creates a device /dev/procreport that, when read, reports on the process reading the device based on newgetpid and 3000physicalview Carleton University COMP 3000, Fall 2022: #inc...")