Faculty Portrait

Contact Information

Name: Shankar Swamy

Title: Faculty, Computer Science Department

Office Location: RVR 3024

Email: shankar.swamy@csus.edu

Office Phone: 9162786834

Mailing Address: 2721 Centennial Dr., Woodland, CA 95776-5308

Preferred Mode of contact : shankar.swamy@csus.edu

ChatGPT Profile - "Funancisg moturus" meaning, anyone?? : ChatGPT thinks I want to be a cartoonist!!

Preferred SnailMail Address : 2721 Centennial Dr, Woodland, CA 95776-5308

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.13.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.

If you are actively using vibe coding, lessons I have learnt and a list of models with open-weights that you could potentially use:

  • Tokens are way too expensive right now - even if your employer is paying for it, at current price point there is no point spending dollars on it on trivial coding tasks like asking Claude to write a fish-shell script to gather all mutated files in the current repo and automatically suggest a commit summary or something like that. I used to do it a lot - without realizing how much we were paying Anthropic for those! Here are some alternatives:
    • If you have a reasonable system with a discrete GPU - even a relatively dated one, you could run some models on your system. I run Ollama locally. There are some decent free models provided by various vendors. I find the NVidia one reasonably good, and meta has a model specifically trained for Python language - since we all have some Python at some time or the other, that is pretty useful. Here is the complete list of models I have tried. I keep swtiching between them for various reasons, out of necessity:
    • Free LLM Models for coding with weights, strong points and Ollama commands to download/use them
    • Technology Innovation Institute has a open-weight model specifically for Java programming language: falcon2. You can install that in Ollama via ollama run falcon2. My Java usage is restricted to CSC 133 coding and that is not complex enough to pass a opinion on the models; but I have heard good things about it on the Internet forums. In my usage, it performed juts about average.
  • Even these models need a relatively high-end system to run at decent pace. Keep in mind that Claude and ChatGPT, Gemini provide some free tokens. The fully free models with all of them are rather lame. (If you have a paid service with Anthropic, if they figure that out, they won't give you free tokens any more. Learn how to manage your browser cookies to get around that! And, yes, even when you are running from the terminal or through an IDE, they still monitor your accounts through the cookies of the browser you used to login. Use the same browser - if you have multiple browsers.)
  • I have used LLMs through multiple IDE's: CLion, IntelliJ, PyCharm, VS Codium. I find that sooner or later you hit their walls and will be forced to revert to terminal. Your mileage may very here; I'm a mainstream Linux person.
  • Sac State provides access to OpenAI. It is not their high end model for coding; probably coding was not a priority when the University negotiated their contract with OpenAI. If that cuts it for you, you can forget all this and just use it! I use these models because I also have OpenClaw running on my system to automate some of the routine tasks - most frequently to sift through my docs, emails, messages to get me what I need at the moment.
  • Bottom line: if these companies have to turn profit by brining their LLMs to mainstream, their pricing models have to change and their token prices have to come down - draustically!

COURSES

CSC133

Course Description & Requirements 

 

CSC296/CSC196

s/shankar.swamy/csc296-graphics-algorithms

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