
Contact Information
Name: Shankar Swamy
Title: Faculty, Computer Science Department
Office Location: RVR 3024 (wherever that is!)
Email: shankar.swamy@csus.edu
Office Phone: 9162786834
Mailing Address: 344 Rundgren Way, Folsom CA 95630
Preferred Mode of contact : shankar.swamy@csus.edu
Preferred SnailMail Address : 344 Rundgren Way, Folsom, CA 95630
Interests and Specialty
When I do get time to write code - I program mostly in C++2x (and keep hoping that the module support on clang gets better soon), and Python 3.12.x. Lately, I have been writing Rust code and 'am impressed with it. May be time for the world to just move to Rust - at least for now! In addition, off and on I am forced to program in JavaScript because of a Information Management System Software that I developed years ago and have come to essentially rely on. [If you are thinking of developing a tool for yourself for long term use: first see if you can find an alternative that has a large userbase! :-(. You're probably better off adjusting your working style to some software that has a userbase beyond one, that meets most of your goals than developing a tool that you think you will make meet all your needs!].
I also have to use MATLAB - largely because of some die-hard MATLAB fans I work with who refuse to give up! They even have a valid argument that NumPy and Matplotlib have inconsistent APIs. Sighh ... I have to at least understand/tweak MATLAB code more often than I like!
Over the years I have programmed in a variety of languages such as C, Small Talk, PERL, Ruby, Java, Lisp/Scheme, VHDL, Verilog, Processing, both GLSL & HLSL, MEL, ... and worked on several flavors of Unix including Ultrix, AT&T Unix, HP AUX, Solaris, Minix, IRIX. Windows 2000, ... Windows 11 now. Used Linux for longer than I want to admit, and keep switching between GNOME and KDE desktops for some reason or the other. Finally last several years I have settled on KDE/Kubuntu.
I use a custom-built Laptop with
- Intel Core i9 Adler Lake with 24 cores, 48 KBx8/32 KBx8/1.25 MBx8/30MBx12 L1D/L1I/L2/L3 caches,
- 64 GB Memory,
- 4 TB SSD
- NVidia GeForce RTX 3080 Ti
Bootable to either Kubuntu 22.04/Fish Shell or Windows 11. I use a variety of editors such as Emacs (keyboard navigation which is good if you are in flow with your typing and more so if you're a "touch typist"; but bad end of line handling and it is dated, laborious maintenance), Visual Studio Code (more mouse-centric than I like, and slow), Notepad++ (some useful features - better regular expression support, does not pretend it knows more about what you want to do with your text; but no formatting support for the languages I use), Notepad (when I need to make a quick change to a text file). Sigh ... I am told you can customize Visual Studio Code almost as easily customizing emacs - but I have not found time to try that!
COURSES
CSC133
Course Description & Requirements
RESOURCES
A lot of these documents are not peer reviewed. If you happen to look at them and notice anything incorrect, please do drop me a line.
- Visual Computing,
- Artificial Intelligence & AI Systems Architecture,
- Quantum Computing,
- Computer Architecture, Embedded & IoT Systems,
- Operating Systems,
- Networking,
- Computational Linear Algebra & Signal Processing,
- High Performance Computing