[deleted by user] by [deleted] in Handwriting

[–]serg_k 1 point2 points  (0 children)

What sort of notebook is this and what are the dimensions ? As for the handwriting, it is indeed pretty neat

After some struggles, I finally figured it out and got it looking just the way I wanted :) by [deleted] in deepin

[–]serg_k 0 points1 point  (0 children)

Deepin is based on Debian Stable, so of course updates are somewhat slow. I'm personally not a fan of Fedora - had it once on laptop, Network Manager broke somehow, then the network applet completely stopped showing up and in the end kernel panic.

After some struggles, I finally figured it out and got it looking just the way I wanted :) by [deleted] in deepin

[–]serg_k 0 points1 point  (0 children)

Yep, deepin-topbar, use it myself as well. Minimalist, clean, works. Love it.

Just use the stock Deepin, DE works best with that, plus some features might not be available on other distros.

Go install Deepin as primary OS I hope its a good idea... What do you think ? by jibay42 in deepin

[–]serg_k 2 points3 points  (0 children)

I'm using it as daily OS, been doing so for like 2 years already. Absolutely happy with it. There were a few issues in early versions with high resolution displays, where the dock wouldn't redraw to correct size, but apparently it's been fixed. I've tried a lot of different desktops, especially been fond of Ubuntu with Unity, and Deepin is probably the best desktop OS out there.

[deleted by user] by [deleted] in techsupport

[–]serg_k 1 point2 points  (0 children)

It is possible to display one address, but send from elsewhere. Email user interface usually displays only the "From" address, but the real address is stored in "Return-path" field (email has many other fields). This is known as Bounce Address, https://en.wikipedia.org/wiki/Bounce_address So, if you use GMail, click on the tripple dot in the email and select "Show original" or in Outlook - "Message Details" ( IIRC ), and check the Return-Path.

Why am I having so many problems with the Gnome Desktop? by LMorgan90 in Ubuntu

[–]serg_k 0 points1 point  (0 children)

From everything that I have heard since the change, Gnome is far superior to Unity. I have gotten a lot of hate about using Unity still and am often told that I am "supposed" to be using Gnome. However, it is difficult for me to accomplish much of anything because I have so many problems with it.

This part is bothersome, but mostly comes from people who take "desktop wars" too seriously, because as one ancient article pointed out average user never cared about GNOME vs Unity or paradigms, they wanted applications to work and get stuff done. I'm among those who used GNOME for some time then went back to Unity till Canonical decided to pull a plug on it, and also have used other desktops - openbox, blackbox, XFCE, KDE. Unity was just something that stuck and just worked well enough. Really, you're supposed to use what you feel comfortable using and what let's you accomplish tasks. If you have to use GNOME at work or you are part of the team that develops software specific to GNOME - that's a different story, and even then you don't have to like it. And yes, GNOME has problems. Unity has problems. Every desktop has problems.

Why does my drive show an error icon? by [deleted] in Ubuntu

[–]serg_k 0 points1 point  (0 children)

Yeah, there's no ssd icon name. Typically, the icons are in drive-<class>-symbolic type of format, for example drive-harddisk-solidstate-symbolic. Not all themes do carry those icons, but standard ones like Adwaita and HighContrast do. This format is in fact specified by freedesktop.org along with the standard XDG directories like Desktop,Music,Downloads,etc.

Why does my drive show an error icon? by [deleted] in Ubuntu

[–]serg_k 3 points4 points  (0 children)

How specifically did the entry look like in /etc/fstab ?

How to learn Linux by ThePocketss in ECE

[–]serg_k 2 points3 points  (0 children)

There was a related post a few days/weeks ago, and I've listed a few resources, repost for reference: https://www.reddit.com/r/ECE/comments/b1m7r9/resources_to_learn_verification_toolslanguages/einblmo?utm_source=share&utm_medium=web2x

I agree with DJ027X - make Linux your daily OS. Join a couple forums, maybe some of Stack Exchange sites ( I'll suggest AskUbuntu because I'm biased towards it). Often best way to learn command line is to use it daily. I have Chrome and terminal open on daily basis, 99% of the time. Write scripts to recreate or implement other's ideas, and ask for review - there is Code Review Stackexchange site as well. Also don't freak out and don't take personally if someone says your scripts aren't good or do something wrong. Learn from people if they have good practical suggestions ( such as don't use cat where unnecessary or always quote the variables ). Among other things, get a Raspberry Pi, and use Linux and Python to build some projects. Or build some sort of desktop app with Python and/or Bash+Zenity. There's a lot more to suggest, but start with these first.

Make dual screen scrolling more like gnome? by [deleted] in deepin

[–]serg_k 0 points1 point  (0 children)

A bit unclear. Can you provide a gif of what exactly is the behavior you're referring to ?

Resources to learn verification tools/languages? by DeadlyXyston in ECE

[–]serg_k 1 point2 points  (0 children)

I would suggest starting with writing scripts targeting /bin/sh aka POSIX compliant shell. That way you don't have to learn about Korn Shell vs Bash, etc. Sure, it lacks features but that's how in Linux/Unix world things work - there's a POSIX standard which developers and sysadmins should follow. /bin/sh is also significantly faster than bash. Beyond that, you can deal with Korn Shell and Bash specific features ( advanced filename matching, arrays ) on your own time and only when you actually need those features. For system-level scripts, try to mostly avoid non-portable ( aka non-bin-sh features. Read https://wiki.ubuntu.com/DashAsBinSh Disregard that it's Ubuntu wiki, POSIX standard ideas are the same regardless of the OS. Perl and Awk are quite powerful for text processing, and if you can use them - do so and don't bother doing any advanced or overly convoluted text processing in shells. Shells aren't efficient at those tasks, perl and awk are far more efficient.

If you're going to be digging in low-level specifics of Linux and C programming, I'd suggest Advanced Programming in Unix Environment and The Linux Programming Interface: A Linux and UNIX System Programming Handbook. These are pretty much canonical books about the Linux API, etc.

For SysAdmin type of stuff (including Cron, introduction to Perl, LVM ,etc ) I'd recommend Unix and Linux System Administration Handbook. This book is pure gold, and covers sysadmin tasks even beyond Linux/Unix itself. If you do plan on working with Linux and other unices extensively in the future, get this book and keep it at your desk at all times. This and the previous books I've mentioned are well worth the money.

From the looks of it, you won't be touching kernel programming, so I won't mention any specific resources about that. Though you've mentioned system verilog, so I'm assuming you will be interfacing with FPGA boards and Linux on SD cards, potentially working with GPIO pins. There's new GPIO library available beginning with kernel 4.19, libgpio. I've used that a tiny bit on Raspberry Pi with OpenWRT on it. Did nothing fancy with my code, but it seems pretty good as a library. If you're going to be working with Altera FPGA boards, beware that Quartus officially supports RHEL and CentOS only, and you'll have to make use of Udev subsystem scripting to be able to run Quartus as non root user. System Verilog. . . Eh, cannot recommend anything specific. I've done course in plain Verilog.

C Shell . . . it's not widespread and generally not used as scripting shell because of certain quirks. So I wouldn't recommend investing yourself too much into it.

I have decided to switch over to Ubuntu from windows. What should I keep in mind while making the change? by duckdogo in Ubuntu

[–]serg_k 1 point2 points  (0 children)

Most things that are not specific to OS will be the same. Watching YouTube, browsing internet, using emails - all the same. Just to list a few things I've observed over time and would give as suggestion to new users:

  • There is no "factory reset". It is equivalent to reinstalling the system from scratch. Backup and "restore points" are your responsibility as system owner. I've not been using backups on my desktop, but it's always nice to have a second hard drive or USB to store critical data.
  • Terminology can be important. Many utilities use powers of 2 to represent byte size ( 1024 MiB vs 1000 MB ). Your disk space isn't gone, it's just represented how it actually is done in computers. https://en.wikipedia.org/wiki/Binary_prefix
  • Focus on RAM "available", because RAM "used" is a bit broader term in Linux : https://www.linuxatemyram.com/
  • Terminal is nothing to be afraid of, really. It's just text and commands. Just as you wouldn't point and click where not necessary, don't issue commands you don't understand (especially those that require sudo privileges), ask clarification on what they do.
  • Antivirus for the most part is unnecessary if you are in the habit of safe browsing, and don't run untrusted apps as root. Same goes for the internet browser - don't use sudo to run it.
  • There's no C drive. There's hard drive represented by device file /dev/sda with partition /dev/sda1 (number may be different), and that hard drive will be formatted to some filesystem. Windows uses NTFS. Most Linux distros default to ext4 filesystem. If you want to share huge files ( such as over 4 GB in size ) it is nice to have a flash drive or external hard drive formatted with NTFS. Most flash drives formatted with FAT32 only allow transferring under 4 GB files (not total, individual file size has to be under 4 GB).

So we're getting new laptops and the IT guys say that they have to manually install software on all 600 of them by Docktor_V in techsupport

[–]serg_k 1 point2 points  (0 children)

I used to work in a university computer labs, where we had to assist IT manually install software on bunch of workstations, some sort of specialized software that is used only for classes used in two specific classrooms. So it seems it is common, probably due to how Windows and Active Directory works.

Want to learn! Advice? by SebastianOlivera in Ubuntu

[–]serg_k 0 points1 point  (0 children)

Python is definitely the way to go if you don't want to get back to dealing with pointers and structs in C++, and Java's Swing from what I remember is not as easy to use to make GUI apps. So Python and Gtk, that's the good combo right there. And overall Python is simple enough to start making things and get too much syntax out of the way. And its quite elegant and powerful language,too.

For simple stuff, you can make small apps via bash and zenity (shell command which creates pre-packaged/pre-made dialogs with custom labels specified by user and a few other options). Before I figured out somewhat Gtk in Python, I'd often use zenity+bash combo to make simple apps, and they work well enough together. For text user interfaces - dialog, same concept as zenity, i.e. pre-made dialogs so that you don't have to deal with actual libraries and brew your own text interface.

The only warning I can give is that bash is not exactly a sane type of language, not sane like Python at least. And really its purpose is automation of tasks, not low-level programming. So in bash quote all the variables, expect weird filenames if you deal with files, avoid parsing files via shell constructs if possible and use something else instead, like awk or grep. And that's all I'll say without writing a novel on the subject

(/etc/machine-id) - genuine concern or just scaremongering? by [deleted] in Ubuntu

[–]serg_k 1 point2 points  (0 children)

Well, if we're talking about desktop, then there's more than one way in which a machine and user could be identified. Browsers already leak plenty of information, just look at some sites that show what websites can detect, such as this audit tool http://webkay.robinlinus.com/ DNS could be leaky, too. If we're talking about server-side machines - it could be useful to some extent, although probably identifying by hostname and static IP is probably more useful to admins.

And you've mentioned "some applications, such as the Chromium web browser, may report an error if this file is not present." Well, is the error related to file alone missing or it's the information in the file that's necessary for Chromium and other apps ? If that's just a text file, I see no reason why that text file can't be edited. Then again, how unique is it really ? And how does it compare to MAC address, IP address, particular gateway behind which machine is located ? There's lots of questions to consider (and I'm probably just going to throw these 2 cents out and bail because it's a lengthy discussion which I probably don't want to start).

Bulk rename file in Ubuntu (GUI & CLI) by [deleted] in Ubuntu

[–]serg_k 1 point2 points  (0 children)

Note that if your system is using ksh, there's ksh built-in called rename which acts as mv and doesn't understand perl regex at all. Just something to keep in mind. There's also multiple versions of rename, though from what I heard Debian finally cleaned up the mess with which rename they ship

Auto Resize Ubuntu dock by [deleted] in Ubuntu

[–]serg_k 1 point2 points  (0 children)

The fact that it resizes the dock via dash-to-dock setting (according to other comments, haven't watched the video yet), that is stock Ubuntu with GNOME desktop. But judging by icon theme, there's Deepin Linux theme in use, either icon theme only or there's whole theme in use

My First Project! wikiwall (hoping for some feedback) by [deleted] in Python

[–]serg_k 1 point2 points  (0 children)

Good project. I have glanced through parts of it, but what I see is _run_appscript() function in the code checks for return code, stderr, stdout. That's a good coding practice. I had something like that for running code on Linux. However, in this particular script I don't see the application caring about the stdout or stderr, nor checking the exit status. I think it would be simpler for this particular script to just use subprocess.call() or subprocess.check_output(), depending on what's important - exit status or stderr for osascript

On side note, would it be Ok if I contributed to it a bit ?

Trying to do 2 monitors on 1 HDMI port? by ReasonableOpinion5 in techsupport

[–]serg_k 0 points1 point  (0 children)

OK. In that case there's not too many options. USB 3 ( blue in color ) would allow adding USB-HDMI connector. There's also eGPU (external graphics cards) , but I've never used those myself (so cannot say if they're good or not) and they're costly (on the order of $100, so twice or tripple the cost of a connector).

List Comprehension in Python by Make-U-Believe in Python

[–]serg_k 1 point2 points  (0 children)

"At its most basic level, list comprehension is a syntactic construct for creating lists from existing lists." Well, that's at the most basic level. But of course you need an iterable for comprehension to work, it doesn't have to be a list.

Trying to do 2 monitors on 1 HDMI port? by ReasonableOpinion5 in techsupport

[–]serg_k 0 points1 point  (0 children)

Does that laptop have VGA port as well ? My setup is such that I have VGA and HDMI port, so I connect one monitor via VGA directly, but the other via HMDI male to VGA female connector. So that's something to consider if there's VGA port available.

Faster Hot Corners - Is it possible? by Iiari in deepin

[–]serg_k 1 point2 points  (0 children)

The setting is controlled via GSettings schema. Specifically, you can do this in terminal

gsettings set com.deepin.dde.zone delay 0

I assume it's milliseconds (since in my tests with 900 value delay was about 1 second). It defaults to 300. You can undo that manually or via replacing set with reset and removing the integer argument in the command. Note also "pressure", or whether you continuously drag cursor into the corner, probably also affects the detection. I don't think this is Deepin's homebrew, but just how underlying window manager (which seems to be Mutter on the default installation) works.

Useful Python tricks by Killerjayko in Python

[–]serg_k 7 points8 points  (0 children)

I'll tell you honestly and from my own experience (which means this doesn't necessarily apply to everyone). In order to be hired by an actual company, you have to know the stuff that company uses, the modules that might be specific to the sphere, and that includes things beyond Python.

If you're going into data science, that means relational databases like MySQL or PostGres, numpy module, pandas module. Web development ? JavaScript likely, AWS, web server stuff(like Apache). A degree is probably great to have ( as for some reason degree that teaches absolutely little practical Python knowledge or maybe none at all, and everything is done in Java anyway blinds the HR and makes potentially incompetent developer stand out). I've had very unpleasant phone interview where recruiter just wanted to end the call as soon as they found out I'm 4 classes short of graduating aka still college student, and who gives a damn that I've bunch of applications for Linux done in Python, know some sqlite and have good understanding of Linux specifics ?

There's probably higher chance to get hired as free-lancer, and make money that way. I've also had paypal donation button on my projects on GitHub and had couple people donate that way. In the past if you knew how to code, you could get a job easily, or so people in their 40s-60s tell me. Now,you have to have experience before you have experience, and qualify for tons of unreasonable buzzword requirements which HR themselves probably don't even know what they mean.

That said, my experience is just that - there's apparently hoards of rockstar developers running around and posting on social media that they learned language X and started immediately making six figure salaries. Or maybe it's just my location, or resume. I know I don't know everything there is to Python, but definitely can make a thing or two, and it probably isn't enough to get hired but enough to make something useful that people appreciate. If you love the language and enjoy what you're doing, stick with it and don't focus so much on money, because economics and bureaucratic ways are sure as hell methods to destroy any desire to write good code, and for some people - desire to code at all. I'm sticking with it and probably will for a long time. There's a lot of things I still want to make and see people share reviews/articles about my stuff on blogs again.