|
I've just recently found out about code using ligatures to do fancy operator representation without requiring unicode in code and I'm loving that poo poo
|
# ¿ Aug 5, 2017 02:00 |
|
|
# ¿ May 16, 2024 20:23 |
|
lancemantis posted:if its just static content then nearlyfreespeech is pretty cheap and they have some other stuff too Been using them for most of my websites on the side. If you barely get visits it's very cheap. As your usage (see: visits and bandwidth usage) grows, it gets a bit more expensive, but so far I've stuck with them anyway.
|
# ¿ Aug 7, 2017 01:56 |
|
I started using vs code on windows because the terminal situation is atrocious there and it's pretty good so far. A modal editing plugin and things are good.
|
# ¿ Aug 8, 2017 01:28 |
|
eschaton posted:you know what’s even better? I started without modal editing. I had to adopt it because I would get severe tendonitis that would keep me from working more than 2 hours a day at ~20 years old. With modal editing I can use a computer for more than 8 hours a day without a problem. I'm never going back, because going back means I can't work anymore.
|
# ¿ Aug 8, 2017 03:05 |
|
my editor, my terminal, and my browser all have vim keybindings in them. Come to the normal mode for an rear end kicking.
|
# ¿ Aug 8, 2017 03:13 |
|
Sapozhnik posted:I use vim to edit un-analyzeable langs like C but any time I use an actual IDE I don't really find myself missing it you can use :ls to get the list of buffers with filenames, but personally I just work with tabs and panes which show the filename nonetheless.
|
# ¿ Aug 8, 2017 12:27 |
|
Wheany posted:but yanking and pulling is the same thing? you bootstrap yourself to moving text around
|
# ¿ Aug 8, 2017 15:38 |
|
"google uses grpc, it has to be great" *ignores the tons of middleware and discipline google engineers have to make it work* grpc is probably fine. I'm just tired of RPC (the sixteenth big son) and "google does it so should we".
|
# ¿ Aug 9, 2017 03:07 |
|
The thing I find interesting about the use of gRPC at Google is that from their SRE book, the entire set up requires an actively managed cluster, a very smart router dispatching requests to a fully managed kubernetes-like back-end of workers on a one-to-one basis, and so on. In the end it sounds like they're transforming the whole thing into what looks a lot more like AWS' Lambda than your traditional RPC set up; they just used RPC as the building block for it. Then you have an army of folks going in there and hand-tuning timeouts, because RPCs calling RPCs calling RPCs turn out to have very weird and tricky timeout challenges and semantics when it comes to time limitations and cancellation. Blog posts from google point out a need to respect special conventions with unified internal interfaces that let such values be harmonized across the stack (a first argument 'context' that must be weaved into all functions on the call path). The unmentioned challenges of getting that kind of RPC architecture to work at their best in practice are kind of scary. Maybe the next RPC will be better. MononcQc fucked around with this message at 12:13 on Aug 9, 2017 |
# ¿ Aug 9, 2017 12:10 |
|
Sapozhnik posted:retry and rollback semantics and atomicity guarantees and whatever don't go away if you simply pretend they don't exist. that's not an argument for or against rpc. This is not a pro-HTTP argument; HTTP can and would make for an often fairly lovely mechanism, but HTTP did the distsys poo poo better than most RPC systems do, even if there have been like 3 HTTPs, but over a dozen RPC protocols. Maybe the 24th RPC iteration will get there. It appears Finagle has a way to mark some failure types as retry-friendly now! Sapozhnik posted:deeply chained and branching call stacks sliced across tens of machines seem like they'd have the problems you describe yeah. a higher-level abstraction would be useful there. but hey, it's google and they employ some of the best distributed systems people in the world. i'm sure they have some sort of improvements in mind here. Until google have their improvements, I don't really feel it's that great of a model to migrate to use in all the places that don't employ "some of the best distributed systems people in the world" without the full caveats and architecture workarounds google required implementing for any level of non-trivial services. I mean for gently caress's sake, I went to a conference about reactive applications last year, and while half the presentations were about how Kafka got people to remove so many arrows from their architecture diagrams and replace them by one big Kafka box with a logo on it, at least a quarter of them were just about how to manage all the RPCs and other remote calls that were starting to be blocking and surprised everyone with the big nasty tail latencies when they used microservices. Microservices just make the problem much more apparent.
|
# ¿ Aug 9, 2017 15:48 |
|
CRIP EATIN BREAD posted:i keep tcpdump running on every server and have it stream to kinesis for processing. you can try tshark for a lighter-weight command-line version of wireshark (it ships with it). You can use the same filters as you would in the GUI, but usually it struggles a lot less at handling huge dumps.
|
# ¿ Aug 9, 2017 19:10 |
|
CRIP EATIN BREAD posted:i hope you know i was joking eeh, I've seen similar approaches before, so it was a stretch. Like people replaying/rewriting packets on the fly so that a staging/pre-production stack gets actual production data coming in. Kinesis was a dumb thing though because iirc they have like 5 qps limits by default and that would just not be possible without paging log files
|
# ¿ Aug 9, 2017 21:16 |
|
Lutha Mahtin posted:Would you say that "it makes the terribleness of your systems more obvious" is a benefit of micro services? (I am a baby coder who probably won't make decisions that big for years, so don't feel like you need to write an essay here lol) It's a benefit if you know you can fix it, have the time to do it, and are going to stick with a microservice architecture out of need already. In a lot of cases, you just have people who want microservices because that's the new cool thing, but for whom a monolith would work really really well for many years. In this case, they're giving themselves distributed systems problems they could avoid by scaling vertically for a long time. OTOH, it's good to keep these problems in mind because they can impact product decisions in major ways so you can avoid them (some things that work locally just aren't possible with large distributed systems) if you know you're gonna get real big.
|
# ¿ Aug 9, 2017 21:19 |
|
tef posted:so like slide 1: the cloud is controlled by too few actors, and people have spare computing resources slide 2: what if you could finance buying a fancier laptop by running containers for a fee during off-hours slide 3: <toaster logo> slide 4: surge price and rigs catching on fire
|
# ¿ Aug 11, 2017 12:40 |
|
get better geo-proximity than any other service. Your customer might even be running your software for you. No lower latencies possible.
|
# ¿ Aug 11, 2017 13:38 |
|
the true benefit of this product is that it may become more interesting for people than mining bitcoins and can therefore kill the bitcoin economy
|
# ¿ Aug 11, 2017 14:11 |
|
Arcsech posted:"the library isn't abandoned, it's finished! what else could it possibly need!" (only ever heard this one from Lisps) Got this in Erlang. I made a library to handle exponential backoff in timers. There's straight exponential, then some with jitter. Then some state/timer management. Some people were worried that the library was abandoned because it had not had new commits in a few year. How much complexity do you expect to have in a library that multiply some values? Like is there really a need for me to keep touching the thing for 3+ years? How wrong do you have to get it to need continuous maintenance there. The library's just feature-complete and has had no further bug reports to fix.
|
# ¿ Aug 12, 2017 22:25 |
|
is that a dynamic scope for traits
|
# ¿ Aug 21, 2017 18:44 |
|
JewKiller 3000 posted:actually, xml > csv > json > yaml CSV is pretty much the worst data format possible. It's even more laxly specified than URI querystrings. This: code:
is technically one of:
which one it is depends on the parser implementation, since even the shittiest CSV RFC allows this ambiguity by design.
|
# ¿ Aug 24, 2017 13:44 |
|
been playing with tun/tap to write little software that bridges connections and injects failures, delays, netsplits (and asymmetric ones too) here and there and it's being really fun Next step is to make it work with cross-VMs on a host (shouldn't be hard, rather than a physical proxy) and then it's gonna be deep packet inspection, thinking of either blocking unsafe protocols, or of spoofing NTP packets to cause clock drift and break systems for fun.
|
# ¿ Aug 29, 2017 14:37 |
|
hackbunny posted:last time I did that, after finding out there isn't an official client library for the tun/tap device, I literally copy-pasted the entirety of openvpn in my project and commented out code until it compiled and worked I'm using a little lib called tunctl that gives an interface to read packets at the ethernet level directly out of the tap device, and then a packet codec for most standard packet formats to operate on them. For the most part I don't need to decode much since a lot of filtering rules can be enabled at a high level, particularly those having to do with just simulating bad lines. So I just open two of these and write the output of one into the other (after transformations applied) and it works pretty well.
|
# ¿ Aug 29, 2017 15:06 |
|
fwiw I still think it would be way neater if any refactoring an IDE does could be done from a standalone executable (just give it a cursor or range to operate on). That way you could do that poo poo programatically as well, and not just when clicking things by hand like an idiot. Like "okay you're moving from X to Y, run this program that auto-upgrades your poo poo for you". It also means it should work from a command line, which would not be a loss.
|
# ¿ Aug 30, 2017 17:45 |
|
Shinku ABOOKEN posted:this is the goal of language servers yeah, clojure and leiningen have something similar for their CLI tool. My guess is that you can integrate the entire clojure toolchain real easy in a thing like VsCode then.
|
# ¿ Aug 30, 2017 18:05 |
|
So I'm toying with TUN/TAP devices in FreeBSD along with some custom software in the hopes of writing what is essentially a tiny ethernet firewall that simulates bad network connections. I've got two working setups: code:
I.e. I'd want to be able to make program A bind to an address on em1, and program B bind to an address on em0, and then get to tell the OS "make the traffic for these go through bridge0 and bridge1", but it appears the OS kind of hard-registers routes for those and always makes them go through the loopback interface, which bypasses my thing. Also all the loving FreeBSD networking resources online are about people trying to set up OpenVPN or something
|
# ¿ Aug 31, 2017 19:10 |
|
hifi posted:that doesn't make sense but it's been a while since i used freebsd. you can try strace? or ktrace? to check what it's doing. what about stuff like nginx where you specify what ip to listen on? Yeah that's the thing I'm doing; specifying binding on IPs. But it just goes and sounds like there's this magic loopback interface that if you go local -> local it just plops it on there and doesn't give a gently caress. I'm possibly doing something wrong and I'll have to reboot and try with no external interface at all from the ground up.
|
# ¿ Aug 31, 2017 23:34 |
|
I am about to sign a contract to get propertesting.com published with pragmatic programmers
|
# ¿ Sep 1, 2017 20:59 |
|
has mysql stopped silently truncating text that did not fit the input type?
|
# ¿ Sep 4, 2017 02:08 |
|
the best swedish collation is fika gotta import this practice.
|
# ¿ Sep 4, 2017 03:55 |
|
I'm the stop < 0 || stop < 0
|
# ¿ Sep 10, 2017 21:48 |
|
you stop googling in a problem area once you've googled enough to know what the results are gonna be and then you're the one who starts giving answers for others to google.
|
# ¿ Oct 5, 2017 14:15 |
|
Chalks posted:It's the bad programmers that try to come up with the solution from scratch every time. Re-inventing the wheel without doing any research is not an efficient way to program and it's very rare that you're doing something so novel that nobody else has solved the problem you're tackling, and they've may well have done it in a better way that you would eventually come up with.
|
# ¿ Oct 5, 2017 17:12 |
|
MALE SHOEGAZE posted:i'm rebuilding my parents website in elixir/phoenix is hoo boy i forgot how much i like the OTP methodology. i'm not good with it yet but it's such a cool concept. Dialyzer and so on, but yeah it's nowhere as strict as an actual type checker.
|
# ¿ Oct 6, 2017 18:53 |
|
Flat Daddy posted:on the topic list it also said last post was from mononcqc but I don't see a post from him yeah I posted but it never appeared. maybe it's for the best though
|
# ¿ Oct 6, 2017 19:05 |
|
|
# ¿ May 16, 2024 20:23 |
|
Prototype to do all the loving up early then rewrite
|
# ¿ Oct 7, 2017 01:14 |