Pages: 1 2 3 4 5 6 7
Posted on 18-11-24, 13:40 in MS is about to release a discless Xbone, this time for real! (revision 1)
Post: #1 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
It could just be they are making a Nintendo and moving storage to SD/flash based cards instead. Today you can get a reasonably fast storage in the order of 256 GB from these technologies, and being a proprietary game console, proprietary extensions to the current SD standard would not be impossible. I think optical media with denser data storage than Blu-Ray would be way too unreliable to produce, so this move would make sense.

I agree a game console without physical media is impossible to fly in the US today, due to how ass-backwards the US is with internet speeds. Not even sure if an uncapped 10GBit line is possible to get in the US - it is in Europe, though a bit pricey. For me living in a small-ish town in Europe and having a 100/100 uncapped line for €30 though, physical media are pretty much a thing of the past. For better and worse.

If Apple has taught me one thing it's that the large majority simply doesn't care. Convenience über alles...
Posted on 18-11-28, 08:32 in Something about cheese!
Post: #2 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by james4591
Land is, despite what state politicians try to downplay or deny, sitting fallow in areas between Fresno, CA, and Kettlemen City, CA. Rainfall since this policy was started has dropped by significant percentages. Crops that used to be plentiful or sizeable in harvest, are now smaller or less developed at harvest resulting in many crops being phased out to either be replaced with crops more suited to arid climates. I've overseen farms being sold, repossessed by banks, farmland being sold for redevelopment for urbanization due to lack of sustainability under the new restrictive regulations. I've seen prices rise, even a few cents at first, but they've been rising for about a few years now.

I don't even want to get started on California and gasoline taxes, but honestly, we shouldn't be having to pay nearly 100% in price over the rest of the nation.

AS far as my stance of immigration? We have laws for a reason. We're a society. Societies have laws. Laws have to be enforced to maintain the society, or society collapses into chaos and anarchy. I would prefer to live in a society that is a society, not an anarchic maelstrom.


So what you're essentially saying is, global warming is happening - got to be those damn progressives fault? Farmers are going under, yes, but I fail to see how liberal policies have contributed significantly to this. In fact, those liberal policies are what's keeping California as one of the richest states in the U.S, and allows Californian farmers to deliver competitive produce.

As for immigration, liberal policies are necessary to keep the farm fields populated for harvest. Most immigrants are after a better way of life, not to loot and pillage the countryside. Quite a few can be ignorant about quite a few laws, of course, but that will always be the case between two cultures clashing.

IMO, immigration is a red herring. Yes, the land cannot take an infinite amount of people increase, but it can take 1-2% extra increase. Heck, Sweden in Europe one autumn let itself increase it's population with 5% by taking a massive influx of immigrants, that is the extreme end of the spectrum. The jury is still out on that one but so far the country is holding together just fine, a few minor issues cropping up here and there but it has certainly not killed the country by any means - and now many of those immigrants are starting to slowly gain traction in the job market.
Post: #3 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by tomman
Once again, why people sticks to Win10!? Aside of hardware compatibility (an artificial restriction), "videogames", and the "new car smell" effect...


Hardware compatibility - Linux has better HW compat, period. Not even a contest. Only exception is new hardware with Windows-only drivers, which, well, isn't happening often these days.
Video games (aka AAA-games) - Steam Linux got a lot of those nowadays, and they're just growing bigger and bigger.
"new car smell" - Win10 isn't even new anymore, did I hear "fresh coat of moldy paint"?

I think the biggest two problems left are:

1. Office. It is the only big software left holding the majority back. While Photoshop is still a thing, it's getting less and less interesting for people to use it - especially since the latest versions are pretty much impossible to pirate. People are starting to getting used to alternatives now. And no, Macs will never ever be able to replace Windows.

2. Plain old inertia. It's what people are used to, and they will have to pry it away from their cold dead fingers, even if it's poisoning them with radiation. Especially then. They need their radiation dose, it makes them feel all safe and snug...

Also this is the primary reason why iPeeps (aka Apple users, iSheeps are a subset of these) are buying expensive (cr)Apple products these days.
Post: #4 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by james4591
Posted by wertigon
Posted by tomman
Once again, why people sticks to Win10!? Aside of hardware compatibility (an artificial restriction), "videogames", and the "new car smell" effect...


Hardware compatibility - Linux has better HW compat, period. Not even a contest. Only exception is new hardware with Windows-only drivers, which, well, isn't happening often these days.

Video games (aka AAA-games) - Steam Linux got a lot of those nowadays, and they're just growing bigger and bigger.
"new car smell" - Win10 isn't even new anymore, did I hear "fresh coat of moldy paint"?


I have to respectfully disagree with Hardware Compatibility. I've used GNU/Linux for many years (at least 20) on and off, and usually hardware compatibility is good but only "IF" you stick to certain hardware, and don't use bleeding edge, otherwise you're in for a load of problems. As far as new hardware goes, Windows is the hardware compatibility king. Driver usually are developed for Windows FIRST rather than GNU/Linux or even BSD, unless the OEM actually provides drivers or contribute code and firmware to the kernel like Broadcom, Nvidia, AMD, etc. If memory serves, Nvidia is one of the very few that provides drivers for a spectrum of operating systems beyond Windows and even GNU/Linux.

As far as games go, yes Steam has brought many games to GNU/Linux and FreeBSD as has Wine, but it's not perfect, and far from perfect at all. Many online MMOs still utilize Ring 0 anti-cheating software that does not work, nor will ever work on Wine. Unless more games actually get GNU/Linux ports and get Linux friendly anti-cheat software, it won't be really getting "better". The only reason many titles are finally getting ported effectively is because of Mesa's Nine support API through Gallium3D as a translation medium and Wine being able to effectively translate Direct3D to Mesa3D and sadly that is limited to DirectX 9.0c with VERY limited support for DirectX 10 or higher revisions.


HW Compat - in the consumer space, yes. BUT. A lot of stuff already have support day 1, like new mice and keyboards, because Linux has a well defined standard interface for USB devices. When it comes to enterprise and server market, it's not even a contest, and some servers out there does not even have support of any kind in Windows (Like RISC-V, PPC and ARM servers). Also let's not forget the Raspberry Pi is good enough for a decent lightweight desktop machine these days. For bleeding edge consumer HW, Windows has an edge still. For everything else... No.

Games - Does it matter if you don't have ALL the games, if the ones you have are of enough quality to keep you happy for a very long time? Linux has enough Triple-A and Indie-quality games natively to let you play for years, at this point, with most new games getting a native Linux release. Valves Wine layer may change that, but for now, well...
Post: #5 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by james4591
Mice and Keyboards are usually under general HID device protocols, so respectively any new keyboard or mouse with similar functions to previous generation models will automatically have support which is fickle at best in terms of a wow-factor.


Yes, but a lot of "hardware support" is already there. Take gamer mice, many Windows users say there are no drivers - but they are there and with even greater control than the Windows tools. Same thing for many other devices. It's not *perfect* of course, but the pool with unsupported Linux hardware is happily shrinking.

I recommend everyone interested to take a look at this website for the majority list of reasons why Linux is not quite ready yet: https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html

Posted by james4591
ARM, RISC, and PPC servers are often under specialty vendors who have pre-built systems for them. Example: Oracle's SPARC servers traditionally have come with Solaris. This argument is a bit negligible because these aren't x86 based servers in high proliferation, though efforts to port Windows NT4 in the past were made, the proliferation of those markets was considered very low in marketshare compared to standard x86 based servers, and efforts to port NT5(2000) were subsequently scrapped.

Windows 10 does offer a special IoT version to the market around ARM based Pi systems. I have no idea how useful it is nor how it works though. Though not ultimately successful, Windows Mobile and RT were available on some ARM based devices like smartphones and tablet PCs as well. I had a Lumia 640 LTE and for a smartphone it was actually more reliable than my LineageOS 14.1 powered Zenfone 2e ever has been, crashed apps far less, and had very little problems with performance unless the apps were outside the recommended hardware requirements for higher end devices. My Zenfone 2e tends to crash Google Play Services several times a day due to problems with resources and resource management that just aren't solved nor ever seem to be.


The reason you want to run Windows or any other platform is because you want to run programs written for that platform. The closed source nature of Windows is also what makes Windows impossible to port to other architectures. You must be able to run your apps and programs on your ARM laptop, and well... There's a metric shitton of binary-only programs out there, written specifically for Win32 / Wintel platforms.

Linux does not have that problem, because Linux and it's distributions are mostly Open-Source, so if it has a gcc-compatible architecture (pretty much all of them), Linux can be made to run on that architecture.

Since the Windows death grip is loosening, so is the restriction to stick to x86 as your daily PC. Even though there's still a lot to love about the x86 infrastructure, a $50 computer frankly holds a lot more love. Windows will (un)fortunately be left behind.

Posted by james4591
As far as games go, yes the availability of many titles is nice and has brought a lot of good quality games to Linux and even FreeBSD, but the MMO market is still the linchpin needed to get GNU/Linux into higher availability. Without the Ring 0 support, even if only emulated through a psuedo-kernelspace in Wine, it still doesn't mean much to switch to GNU/Linux or even FreeBSD. Many of these MMOs are Free-to-Play games. Free-to-Play games on a Free-to-Use OS, is the holy grail of win-win situations. You get those, you get the marketshares to GNU/Linux. Trust me, even I would love to one day see this headline "Wine adds emulated psuedo-kernelspace allowing Ring-0 anti-cheat software to work under GNU/Linux and FreeBSD" and ditch this horrible nightmare OS myself.


MMORPGs? Sorry, but they are slowly waning. I know WoW has been working with wine on and off since forever, but the most popular games these days are MOBAs. And here, Dota 2 is available as is HoN. LoL and Smite are missing though, as well as Fortnite, but the situation is slowly changing.

So while your particular poison might not be available, similar decent games exist. It's like owning a Sega Genesis and being in love with RPGs - most good ones are on the SNES but some good ones also exist for my system, and if RPGs aren't your main reason for sticking to a certain console, then the Genesis may well be the superior choice.
Posted on 18-12-01, 09:58 in Monocultures in Linux and browsers (formerly "Windows 10") (revision 2)
Post: #6 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by CaptainJistuce
Online RPGs can't be played on Linux


Except for native titles such as Second Life, Tibia, Champions of Regnum, Saga of Ryzom, Wurm Online, Salem: The Crafting MMO, Eternal Lands, Stendhal Online.

Many also work with Wine, take a look at https://appdb.winehq.org/objectManager.php?sClass=category&iId=103&sAction=view&sTitle=Browse+Applications

To say Online RPGs cannot be played on Linux is simply a false statement. Now, your particular brand may not be available, Wine or no wine. But that's like saying a bar doesn't serve Alcohol because it serves whiskey, but not bourbon.

Posted by CaptainJistuce
It is the same reason we're seeing the argument that Linux has better hardware support than Windows. It MUST be true, because to be false would mean that Linux is inferior to Windows in some way, and Linux is objectively superior in every regard.


Objectively - it does. I can run (pretty much) the entire Debian distribution on 14 different architectures and counting, for instance. Windows simply cannot compete with that. But yes, of course there are blind spots, the consumer space is still a bit problematic and what's better for me and my use case is not necessarily better for you and your use case.

But it might, and you never know until you try.
Posted on 18-12-01, 16:28 in Something about cheese! (revision 2)
Post: #7 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by james4591
The problem of global warming is the science around it is lackluster and is actually heavily politicized as a means to exert governmental force over populations without merit or need.


Out of, at this point, tens of thousands of studies, 99.9% agree Global Warming is a thing and that it is man made, and while there is still some debate about how bad it is, we're all in agreement that global warming will eventually lead to the extinction of all (surface) life on earth as we know it, as the entire earth turn into Sahara.

Posted by james4591
The liberal policies have done more damage than good, if you read into the dirty fine print of the issues.


So, end all trade deals then, and see how much better the economy will fare from that. The U.K. and Trump are both doing a great job at showing that.

Posted by james4591
The problem of illegal immigration is one thing people don't consider.
Rather than trying to solve problems back in their own countries, these people leave their countries which not only robs their homelands of a capable workforce that could change their own future, but it creates a problem for the local population of the country they immigrate into the issues of laziness among the local population. You may say, "It's jobs Americans don't want", but what does that really mean? It means "Americans won't take these jobs not because of manual labor or less pay", but because they feel, "it's not my problem, let someone else do it." but that also extends back into the family unit as well. Rather than mom and dad, or the kids taking up chores to keep the house going, they look for hired help to do the work for them. While it does give some person a job, it also robs the family of not only money, but also invites the aspect of being lazy that can spill over into more areas, like the yard upkeep, painting the house, caring for the children, washing the dishes, etc. The point is, it all starts small, but builds slowly...


You are making very interesting assumptions here.

#1: That the origin country is open to change. Many of these countries are kept in poverty by design, and any attempts to change this is met with invasion or civil war, sometimes ending in genocide. See, for instance, Chile and the Pinochet regime.

#2: That even if the origin country is open to change, the immigrants actually have anything to say about that. If you're a poor peasant scraping by with very little, well, no. Most immigrants do not have the means to propagate change even if they could. It's like asking a black slave in the 1830s to abolish the slavery - ain't gonna happen.

#3: That the youth of today is just being lazy. They are not, and we need to stop thinking of them as such. But the immigrants are not stealing any jobs - they are taking jobs and positions the natives cannot fill, for one reason or another. One reason could be the job pays too little to allow anyone to survive except a cheap labor worker, another could be that not enough natives have the proper education.

The problems you see are therefore not due to immigration. That does not mean the problems does not exist, but the immigration is a red herring that fools like to blame their, admittedly very real, problems on - instead of working to improve their own community. And a lot of energy is spent on what amounts to drama, instead of seeking real solutions. Kicking everyone out isn't a real solution to everything, but instead the biggest admittance to failure you can make.
Posted on 18-12-01, 16:41 in Advent of code
Post: #8 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
It's that time of the year again!

Do you have what it takes to win the advent of code challenge? Probably not. But it's a fun exercise nonetheless. 50 coding problems - two each day - that helps you grow massively as a programmer.

Anyone else willing to join? I plan on doing this year challenges in Go just to learn that language. Of course, YMMV! :)

AoC can be found at https://adventofcode.com/ and add 2015, 2016 or 2017 for earlier years.
Post: #9 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by CaptainJistuce
I've tried. My experience with Linux is... not great. It is pretty awful, actually.
My experience with FreeBSD is a lot better, but... it still doesn't do what I need it to do(play games).


Sometimes, a tool is not meant to be used by everyone.

No shame if you're stuck in Windows 10. Linux can be your cup-o-tea - but most people doing linux have games as a side thing, not their primary reason to use a computer. Which is fine. All I ask is, try it with an open mind. It could work for you, or it would be too much work to switch over. TLG on Linux recently made a Youtube video about the horrors of Linux Video Editing:

https://www.youtube.com/watch?v=hksW66jw1jA

So there are legit reasons to run Windows 10, but I'm confident these reasons will slowly disappear as time moves on.
Post: #10 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by james4591
The problems of publishers refusing to target GNU/Linux or even broad based UNIX support is never going to end until one key problem ends within UNIX as a whole. The infighting between developers, projects, and distribution maintainers.


Might as well ask all countries in the world to stop their stupid wars. Ain't gonna happen, and I also disagree that consensus is necessary - Publishers are free to support RedHat or Ubuntu, or both. Supporting anything else is pretty much not necessary.

Likewise, GTK is the mainstream Linux GUI framework these days, with QT slowly losing ground. Chances of a QT comeback is increasingly unlikely, but hey, could happen.

These days, containers exist if you must keep your source code secret, which pretty much keeps your ELF executable for infinity. With all the good and bad stuff that involves.

Posted by james4591
The fact is GNU/Linux is a mess. It's an organized mess, but a mess is still a mess regardless of how well you can push the pile around.


But of course it is. But so is every other OS, too. Ever looked in your "installed apps" on that "clean" windows machine you have? Why do you need six different versions of Direct X installed? You call that clean? Not to mention all programs are containerized in Windows, too.

Now, if it weren't for systemd being a magnificently beautiful marvel of glass foundation ready to be shattered at your earliest convenience, and the same thing goes with Pulseaudio, things would look rather nice. But nooooooo.

Hmm, maybe I should start running HelenOS as my daily driver.
Posted on 18-12-05, 21:43 in Monocultures in Linux and browsers (formerly "Windows 10") (revision 1)
Post: #11 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by tomman
Choice is good. Excess of choice is not.


Before I begin, I think we're on the same page here. What would be nice is standard interfaces so you can interchangeably use KDE, Gnome or WhateverTheFuckYouWant, but then some asshole will break those standards, unfortunately. Tried it, didn't pan out, time for new types of assholes.

I have to repeat though, the abundance of choice is not a problem in and of itself, just look at the hardware market. If you can't be arsed about the details, hire someone to build it for you or get a pre-built system.

I thought Ubuntu would be the one distro to rule them all - and for a while, it seemed to be the case. Red Hat was getting too entrenched in their niche and all development happened on Ubuntu. Then Ubuntu dropped the ball while Fedora/Red Hat picked up the slack, and now I'm not so sure anymore. Could be Ubuntu, could be Mint, could be Fedora that finally gets that widespread adoptation. Or some currently unknown dark horse, or perhaps even a Linux clone with a micro kernel or quantum computing OS.

I do agree though, if Linux (or BSD) ever goes full mainstream, it will be a single vendor that will stand taller than the rest, it will be the obvious go-to choice, and it will be where the majority of newer development happens. Right now that is Fedora/Red Hat and to some lesser extent, Valve and Debian/Ubuntu, but the market is still small enough that everything can change if someone does a Shuttleworth and spend billions in order to make things not suck as much.

One can always dream. Meanwhile I'm perfectly happy with my Ubuntu emacs/i3wm abomination of a frankenmonster setup I've got going right now, but to each their own.

Posted by tomman
Anyway, back to topic. Apparently Edge is doomed, nobody wants to use it, and Microsoft is well aware of this. [Can someone please give Blink/WebKit some decent competition???]


Hmm, Firefox finally runs each tab as a single process at least. I'm back at FF now and it feels better, still weaning myself off Chromium though, and some pages (for instance, Netflix) simply refuse to work.

Also, let me add Presto to the list of dead browser engines worth mourning. Opera was one of the best browsers around in the mid 2000s...

Posted by tomman
In the meanwhile, MS is working on yet another Windows version, this time targetting appliances ChromeOS machines: ...why?!


Like I said before; all versions of Windows which does not let you run Win32 apps are doomed to fail. For better or worse. As for why, because Microsoft loves pissing away money, just look at the Nokia fiasco!

Posted by tomman
... Modern drivers ...


... Ugh. So they basically invented a new driver model having all of the same problems as the previous model, while adding a couple more issues? Or am I missing something?

Microsoft at their finest, for sure!
Post: #12 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by Covarr
You seem to be misunderstanding what people have a problem with here. The problems people have with Red Hat and Canonical have very little to do with open source licensing and everything to do with monolithic, bloated software, corporate-style culture and development, and basically un-Linuxing Linux. Strong-arming the community into homogenizing everything and limiting user and developer choice is not good for Linux, and really ought to be saved for the proprietary realms of Apple and MS.

Heck, I say this as someone who likes Windows, uses Windows 10 as my daily driver... Red Hat and Canonical are Microsofting up Linux, and that's a bad thing, even if the licenses remain open.


Well...

1. Linux needs some sort of standard. Right now there is simply too much incompatibility, and it's hurting the entire OS and ecosystem. Doesn't matter what you say or do, someone somewhere will be pissed because their beloved $PREFERRED_DESKTOP will get the short end of the stick. So, at this point I do not really care who decides to clean up the mess, and even a Microsoft-ish, more unified Linux is better than the fragmented mess we see now.

2. I do agree Linux is getting less... Linux-y, and this is a bad thing. systemd is the poster child of course (great idea but awful implementation, let's leave it at that), but also containers and big bloated monoliths as a whole are part of the problem.

3. Linux as a whole feels a bit too organic, too, with a lot of things still stuck in the eighties. I think it might be a good idea to step back, look at the good and bad parts of the system, and do a complete redesign. Today, for instance, I see quite a bit possibilities with multi-core and micro kernel architectures. A 6 core 12 thread machine, for instance, could afford to dedicate one core to all microkernel activities, with one thread dedicated to scheduling and the other dedicated to handling all timing-critical stuff like IPC and I/O. That frees up 10 threads for other purposes, which could use a much smaller program focused only on scheduling tasks. Heck, you could theoretically have two cores at a really high frequency, and the rest at one quarter of that, and still gain a ton of performance to such a model. Or, why not an FPGA with hardware scheduling, or...

What I'm trying to say is, a lot of the OS field is still unexplored territory, and Windows will have no chance of supporting much of these new discoveries in time, now that the hardware is finally available - not without breaking the one thing making windows worth having, backwards compatibility.
Posted on 18-12-13, 08:01 in How the Dreamcast copy protection was defeated
Post: #13 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
There are a few brilliantly simple copyright schemes though. One of the best ones I found out about was on the StarCraft CD (I think?) where the outer layer of the disk was circular and played the exact same message a certain number of times before jumping to another part of the disk.

This of course confounded those pirates for years, because most CD-ROM media burns in an inward spiral. This then caused the software image to simply write the same repeatable garbage pattern to the ISO file, making it impossible to play back.

Clever, clever... And easily defeated once you know what to look for! :)
Posted on 18-12-20, 00:23 in Declarative mount points?
Post: #14 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Well, if it is something you do often, you *could* do:

$ echo "alias mount-foo mount <device> <path>" >> ~/.bashrc; source .bashrc

Then you would need to create the mount point once but after that, the alias does handle mounting for you.

Not a perfect solution, but #worksforme
Posted on 18-12-31, 13:09 in amethyst (text editor)
Post: #15 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
This looks promising. So, when will you add Lisp support and modal editing? ;)

Yes, not entirely serious - I'm just a bit sad to see that the old ways of customizable editors and the editing language of vi is slowly dying. But this is not the place, nor time to start the old editor wars again...

Good luck with this!
Posted on 19-01-01, 23:30 in amethyst (text editor)
Post: #16 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Yes, modal editors are clunkier to learn, just like the command line. Vi is especially hard to take in. However, having finally learned the vi language, for a language of button presses it is, I can finally do really complicated edits really fast.

Of course, vi does have some antiquated concepts, hardly suited for modern times. So does emacs. When it comes to keyboard-only mode, vi and emacs are kings. But, these days some tasks are better suited for mouse.

In my opinion, an ideal editor should offer:

* Keyboard centrism. Because it's still the best way to edit and inspect code.
* Multi language support. Visual Studio is a great code editor for C, C# and C++ but sucks for Python, JavaScript and CSS for instance.
* Discoverability. It should be easy to discover the more advanced functions of the editor, at your own pace.
* Convenience. Things like autocomplete, intellisense, auto-formatted code and command recordings greatly simplify my life.
* Version control support, preferrably as a plugin.
* Project navigation, vim is great for managing a few configuration files but any project bigger than a dozen files become quite cumbersome to manage in vim alone, not to mention something big like the Firefox source code.

Visual Studio and Eclipse are great at Discoverability, Project navigation and score high at Convenience, but often fails at version control, multi language and keyboard centrism.

Meanwhile, emacs and vi are both great at keyboard centrism and multi language support, and are in many ways more convenient to use - but does not offer the same overview with projects and both suck at being discoverable, despite things like Spacemacs.

Modal editors shouldn't really have to be an impossibility however; how about an editor that offers ctrl+space as a way to enter command mode for instance, but insert mode still allows for rudimentary commands such as save, cut, copy and paste.

Lastly, emacs does have quite a few nice advantages I have yet to find anywhere else. Undo-tree is simply glorious magic, magit has to be one of the best git frontends I have yet to encounter and evil mode allows me to do all my vi editing magic right there in emacs. So, right now nothing beats emacs for my use cases, but the quest for the perfect editor still continues...

And I'll have to check out Kakoune too. :)
Posted on 19-01-24, 22:35 in Ideas for coding a collection cataloging application (revision 1)
Post: #17 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
I would probably go with Python, SQL and Django on a Raspberry Pi or similar SoC computer, which is then banned from access from communicating with anything other than your laptop. Do regular backups of (relevant parts of) the SD Card every so often, and you're golden.

Oh, and I probably should mention as terrible as PHP is, it has slowly improved over the years, PHP7 is almost decent.

Happy hacking!
Post: #18 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
For PHP7, an old-newfangled ORM library already exists in the base distribution: PDO. If you are going to go with PHP, I suggest you look into that. The Zend engine is the next logical step if you are serious about PHP for more than a hobby project.
Post: #19 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by tomman
I thought PDO (which I've used in the past) was simply a better way to connect to databases and run queries while being able to catch errors as exceptions (seriously - I remember last time I used PDO was to replace someone else code which told nothing when things blew up - with PDO not only it was much easier to do stuff, I was able to actually know what went wrong). In fact, after reviewing the documentation, I see no ORM capabilities whatsoever.


Ah, the concept of ORM has evolved in the PHP world since I last looked at it, was it around 2010? My apologies.

I equate ORM with "API that allows you to deal with database rows as objects. Plus a few extra convenient functions." Which pretty much *is* PDO, but yeah. That's the brain damage you suffer when you grew up with the horrible horrible mysqli API of PHP4. ;)

Coincidentally, my dream database API interface is one which allows you to select external fields from the database using joins. Let's say I have two tables, car, and person. I would like to list the car model, year, license plate and the name of the owner. With SQL, I'd do something like

SELECT
car.model, car.year, car.license_plate, car.person, person.name
FROM
car
INNER JOIN
person ON car.person=person.id


With an ORM, I'd have to do two queries, one for car, and one for people, and then do the joining myself. It just feels so inefficient when you have a couple of fields and doesn't really care about the rest. But that's just me dreaming... :)
Posted on 19-01-30, 17:24 in Ideas for coding a collection cataloging application (revision 2)
Post: #20 of 130
Since: 11-24-18

Last post: 11 days
Last view: 3 days
Posted by tomman

On JPA you have JPQL which is more or less the same as SQL, and actually that's what I use for most queries. But as soon as you need dynamic queries (say, I may or may not need cars filtered by year, while filtering out by license plate prefixes all the time, unless if I want only a list of all cars driven by Lil' Bobby Tables, on which case I don't care about specifics), it's better to switch to something else (like Criteria API) instead of concatenating SQL/JPQL/whatever weird SQL dialect is offered by your ORM.


Hmm, those specifics seems fairly straightforward. Sorting can be done with "ORDERED BY" statements, and filtering can be done with WHERE, like this:

SELECT
car.model, car.year, car.license_plate, car.person, person.name
FROM
car
INNER JOIN
person ON car.person=person.id
WHERE
person.firstname="Bobby"
AND
person.lastname="Tables"
ORDERED BY car.year,car.model DESCENDING
LIMIT 10 OFFSET 20


The problem with most ORMs are that they simplify the SQL handling way too much, and yes, I'm being way too much of an optimisation nerd. ;)

[edit]To be clear, the situation I'm trying to avoid is something like this (forgive my PHP, haven't used it in ages):

$cars = get_rows('car', $filter);

foreach $cars as $r {
$person = get_rows('person', array('id',$r->owner));
$tbl_row = array($r->model, $r->year, $person->firstname, $person->lastname)
print_table_row($tbl_row)
}


Which saves on memory but is an atrocious SQL query hog. The other alternative would be:

$cars = get_rows('car', $filter);
$persons = get_rows('person', NULL);

foreach $cars as $r {
$tbl_row = array($r->model, $r->year, $persons[$r->owner]->firstname, $persons[$r->owner]->lastname);
print_table_row($tbl_row);
}


Which is better but instead takes up a *lot* of memory. Of course, the best solution would simply be:

$fields = array('cars.model', 'cars.year', 'person.firstname', 'person.lastname')
$tables = array('car' => '', 'person' => 'car.owner')

foreach get_rows($fields, $filter, $tables) as $r {
print_table_row($r);
}


And yeah, when it comes to dynamic filtering, it does take a bit of thought, but SQL fortunately is great at that sort of stuff, and it's quite easy to insert PHP variables in the queries. Just make sure they are scrubbed first.[/edit]
Pages: 1 2 3 4 5 6 7
    Main » wertigon » List of posts
    Kawa's Github