How to Start Using and Developing on Ubuntu Linux

How to start using and developing on Ubuntu Linux?


Suggestions

Environment Setup

  1. I would recommend you install a the JDK if you are doing Java development. Look here for instructions on using apt to install the sun JRE.

  2. Then, get yourself a decent IDE setup. Try Netbeans or Eclipse - both can be configured to work with php as well.

  3. Also make sure you install php and Apache, here are some instructions.

  4. Since it sounds like you are going for the classic LAMP setup, you may as well install PostgreSQL or MySQL.

That should get you running far enough to make videos, etc useful.

Development Resources

IDE Resources

  • Guided Video Tour of Netbeans 6.5
  • Eclipse and Java Video Tutorials

Java

  • Java Antipatterns - Learn what not to do in Java.
  • Apache Commons - Get libraries for common tasks in Java.

PHP

  • PEAR - Get libraries for common tasks in PHP.
  • ADODB - Get a decent db backend for PHP and learn how to prevent SQL injection attacks from the start.
  • Start to play around with a web dev framework.

How to start Linux Programming

Start reading the book Advanced Linux Programming which is also available as a free PDF.

Do not fear the advanced keyword. From the details of your post (ncurses, sockets) you are already "advanced".

You can also look later at the glib library (Standard component of GTK+/GNOME but
also used in command line applications.)

If you absolutely have to program in C++, read the whole documenation of QT
and you are good to go.

Is it possible to write a C program on Windows for Linux

Yes, if you setup WSL2, you should be able to develop C like you did on your VirtualBox machine. If decide to use Ubuntu, running sudo apt-get install build-essential should give you everything you need to compile and run C programs.

How to setup a C development environment on Linux for GTK+?

The exact package name depends on your Linux distribution. If you're using Ubuntu, then the right command is:

sudo apt-get install libgtk-3-dev

You may then check if the development packages are detected with something like:

pkg-config --exists gtk+-3.0 && echo "Installed" || echo "Not installed"

To learn how to build your application, follow the instructions of the official documentation on How to compile GTK+ applications.

Finally, instead of doing the gcc calls manualy, you can automate them by using a build system like the Meson build system. There's a tutorial on how to build a simple GTK+ application with Meson.

Beginners Ubuntu linux guide for experienced windows developer

The Linux world is much more fragmented than the Windows world; for developing GUI programs, there's several GUI toolkits to choose from (GTK and QT are the two most popular; there's also FLTK, TK, and even old Motif is still kicking around).

Systems programming is thankfully MUCH better, buy a copy of Advanced Programming in the UNIX® Environment, Second Edition and you'll have enough to write great systems tools on dozens of platforms.

If you're in the middle-layers somewhere, a higher level than systems programming, you'll typically be working with other libraries and toolkits: Apache, PostgreSQL, Hadoop, libevent, Tomcat, Ruby on Rails, Django, expat, GnuTLS, OpenSSL, Perl, Python, Ruby, Erlang, etc. Figuring out which of the options you've got to work with may be daunting, but most projects have reasonable documentation.

Most tools have manpages: skim man man, and then: man 1 intro, man 2 intro, man 3 intro, man 4 intro, man 5 intro, man 7 intro, man 8 intro. (Feel free to look at man 6 intro if you want, but manual section 6 is for games.) 1 is for user-commands, 2 for system calls, 3 for library calls, 4 for device files, 5 for configuration files, 7 for "frameworks" (socket(7) and ip(7) for socket and IP details), 8 for system administration commands.

Maybe asking for specific advice would lead to more concrete answers -- the simple truth is there's no simple single programming guide on Linux systems.

Web development environment on Ubuntu

One good way to get started is VirtualBox. It's free and it lets you boot up Linux (any OS, really) without leaving the comfort of Windows. Later when you are more confident, you can try dual-booting.

It takes a lot of learning, and don't be afraid of the command-line. If you rely on GUIs, you will only be using a fraction of the OS.



Related Topics



Leave a reply



Submit