87

This sort of hypothetical might do better on Programmers.SE because it's likely to be pretty one-sided here. That said, I was a .NET developer for a few years and came to depend on Visual Studio. It does a lot for you and yes, I particularly like the integrated debugger... However, I think there are a few reasons people choose Linux: Ubuntu is free. ...


72

Yes, you can develop software on Ubuntu, that itself will run on Ubuntu, in C#. Both Mono and .NET Core support GNU/Linux systems like Ubuntu. (You can use them on other distros, too, like Debian, Raspbian, Fedora, CentOS, Arch, Gentoo, and so forth.) The Unity3D game engine also supports Ubuntu, as you probably know. Unity3D embeds Mono. A number of ...


55

Most likely you will stumble upon http://www.mono-project.com/ As the About Mono page says: Mono, the open source development platform based on the .NET Framework, allows developers to build cross-platform applications with improved developer productivity. Mono’s .NET implementation is based on the ECMA standards for C# and the Common Language ...


42

I got essentially the same message (except that ld-linux-x86-64.so.2 was replaced by ld-linux.so.2). I had installed Valgrind using apt-get so libc6-dbg was already included as a dependency. I haven't fully resolved this yet, but a clue is that the error correlates with my use of -m32 when building. So it would seem that, in my case, the problem is the ...


38

COBOL is not particularly popular on Linux but there are compilers available. One of these is open-cobol. First step is to check if it's installed on your system: it probably isn't. whereis cobc; which cobc cobc: If like my system it is not installed you can install it with sudo apt-get install open-cobol And to check its installed whereis cobc; which ...


37

I would like to add one more important reason though; Ubuntu is great for experimenting with new libraries, languages, IDEs and compilers. Everything is one apt-get away. So you've heard about a fancy language called Haskell: sudo apt-get install ghc nano hello.hs <copy-paste hello world example> ghc -o hello hello.hs ./hello Hello World! Oh, you've ...


36

Yes you can use mono For a nice IDE to work in try monodevelop sudo apt-get install monodevelop This will also pull in all the necessary runtimes needed.


34

You can get theme files from https://github.com/codebrainz/geany-themes (I prefer Spyder Dark and InkPot). The easiest way is to click "Clone or download" and then "Download ZIP". Just copy the .conf files directly into ~/.config/geany/colorschemes/. (Not wrapped in another subfolder as a result of downloading, archive extraction or Git.) They will ...


31

The answer is simple and not really helpful. Whichever language is needed. Ubuntu is a ton of software, some of it written in C, some C++, some in Python, Perl, bash... and others. You should definitely learn scripting with bash, and you should pick a language like Perl or Python, possibly the latter. Furthermore, learning good old fashioned C never hurt ...


26

What you are looking for is Mono, which is, quoting from the project's website: An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET Mono also comes with an Integrated Development Environment (IDE): MonoDevelop. Both softwares are packaged for Ubuntu. Mono MonoDevelop This last package depends ...


25

One reason to get the error: attach: ptrace(PTRACE_ATTACH, ...): Operation not permitted is because the process has already been attached to with gdb, strace or similar. To check if this is the case, run: grep TracerPid /proc/$THE_PID/status If it is nonzero, that is the pid of an existing program that is already running a trace on that process.


24

The short answer is "no." Strictly speaking, the Linux kernel provides little more than a direct interface to the hardware it is running on. There is an entire stack of additional Android-phone-specific APIs, programs, applications, etc. on which Android applications depend. Additionally, Android does not run on a generic Linux kernel, but instead runs on ...


20

Here's an opinion from a primarily Microsoft platform developer. If you're not targeting the .NET ecosystem I would argue that your best option is Ubuntu. You will have a much easier time obtaining, configuring, and using tools for almost every other platform/language if you are on Ubuntu instead of Windows. The value of Microsoft's toolchain is that it is ...


20

There is a very easy and handy way: Using script to make typescript of terminal session Start the command script If the argument file is given, eg script ~/tmp/output, script saves the dialogue in this file. If no filename is given, the dialogue is saved in the file typescript Start your script or what ever you want to start If your script is finished, ...


20

You can now develop server applications on Linux using C# (.NET Core framework), like you can use Java or Python. By server applications I mean web applications and web service (REST) applications mostly. This makes a perfect match with Linux containers (Docker/K8s) and clouds. You can develop desktop applications with C# using the Mono Framework (a .NET ...


19

Just to make sure that the Gtk way is also present in an answer: The equivalent of gtk.timeout_add(PING_FREQUENCY * 1000, self.doWork) in gobject introspection (PyGI) is: from gi.repository import GLib GLib.timeout_add(PING_FREQUENCY * 1000, self.doWork) However, when checking something regularly every x seconds, you should use GLib....


18

As izx has commented, this should only be able to happen due to a kernel bug. So anyone who can currently produce this problem--including and especially the original poster of this question--would be well-advised to report it as a bug by reading that page thoroughly and carefully, and then running ubuntu-bug linux on the affected machine. This should be ...


18

My personal favorite for web programming would have to be Brackets. It has support and syntax highlighting for many, many languages, and has plenty of awesome features. It has an awesome interface that's really easy to use, along with a whole raft of features, like over 100 extensions accessible right from within a built-in Extension Manager, live-preview ...


18

if you normally run your script with foo.sh, try running it (assuming it's a bash script) with bash -x foo.sh. If you want everything redirected to file, try bash -x foo.sh > file.log 2>&1 (note I'm redirecting stderr as well, remove the 2>&1 if you don't want this). If you also want to see what's going on, bash -x foo.sh 2>&1 | tee ...


17

You could install the Netwide Assembler, NASM: sudo apt-get install nasm NASM provides the -t option which enables the TASM Compatibility Mode: NASM includes a limited form of compatibility with Borland's TASM. When NASM's -t option is used, the following changes are made: local labels may be prefixed with @@ instead of . size override is ...


17

Unfortunately, you have to have Xcode installed on your machine and that's not possible on Ubuntu. I have been looking for that for a while and I find these answers to be very informative (read them in order): Can you run xcode in Linux? How do I install Xcode on Ubuntu? Can I install xcode in Ubuntu?


16

The command line way is: sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10 and then use sudo update-alternatives --config editor to select Geany if necessary. As a graphical alternative to the command-line method, consider using Gnome Alternatives (sudo apt-get install galternatives). Run GAlternatives, select editor in the left ...


15

I use both tools, IDEs and text-editors with Command-Line Interface (bellow referred to as CLI), to write programs. What Linux offers is a useful CLI starting from the default installation. If you don't need that and you are just using an IDE anyway, then there isn't much of a difference anymore (IMHO). IDEs IDEs are very good when it comes to integrating ...


15

Since what seems to be the occasion to ask this question already has an answer, I am answering this question as an extended explanation on how it was done (in python) Basic static indicator Since Ubuntu Mate, from 15,10, supports indicators, there is not much difference between writing an indicator and a panel app for Mate. Therefore, this link is a good ...


14

The commands/programs in /bin are not non-readable, but they are, as you say, compiled. This means that they were originally written in C (or some other programming language) and have been compiled to machine code (binary) so the processor can execute the code. To do the same, simply write the program you need in C and run the gcc command to produce an ...


14

As an alternative, this also worked for me: xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g') This line fetches all MimeTypes gedit is registered for, performs some cleanup (the sed commands) and finally sets geany as default application for them. I found it here along with a bunch ...


14

You can invert the scheme: Edit → Preferences → Editor → Display → Check: Invert highlighter color scheme. The alt scheme is in (You may test if can add other one or just modify this one) /usr/share/geany/colorschemes/alt.conf Note: How did I found this? I check for geany packages using synaptic. Looking in their Installed Files tab ...


14

By default, both python2 and python3 are installed. As already mentioned, you can check your version with either: python -V (mind the capital) or python --version or apt-cache policy python However This will only show the version of python2, while on 14.04, python3 is installed as well. To see the version of python3, simply replace all occurrences ...


14

I would recommend GitKraken because it is pretty polished, but it is closed-source.


13

Linux (the kernel) is essentially written in C with a little of assembly code. The lower layer of userland, usually GNU (glibc and other libraries plus standard core commands) are almost exclusively written in C and shell scripting. The remaining of the Gnu/Linux distributions userland is written in any language developers decide to use (still a lot of C and ...


Only top voted, non community-wiki answers of a minimum length are eligible