Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



is spacy.io any good?

I have some terrible ocr text of internal danish police newsletters from the turn of last century and I wanna try pulling out person names

was thinking named entity recognition but am not sure if that'll work since all nouns are capitalized because olden times

Carthag Tuek fucked around with this message at 13:51 on Jun 29, 2018

Adbot
ADBOT LOVES YOU

mystes
May 31, 2006

Sniep posted:

i wonder if microsoft's employee vision insurance plan is called "C#"
I hate that feeling when you think of the perfect joke just slightly too many decades too late

Finster Dexter
Oct 20, 2014

Beyond is Finster's mad vision of Earth transformed.

HoboMan posted:

i want to use typescript but the @types for all the libraries i want to use either break stuff or use any for a lot of things making it pretty pointless

I've had this same problem every single time I try to do a project in typescript. The type defs that are supposed to be the glue between your ts code and your js libraries are either wrong, or the libraries themselves are wrong. I don't remember the library, but the type def was wrong for the version I was using, so I upgraded the library to the very latest, but there wasn't a type def for that version yet, so I gave up on that and just went back to lovely js.

Shaggar
Apr 26, 2006

I guess its better than using ruby or something

gonadic io
Feb 16, 2011

>>=
god i'm so frustrated now. my team usually has pretty good working practices but this is currently a shitshow
- somebody pushes a change that breaks dev. no big deal they say they'll fix it
- 2 days pass
- that person instead of fixing dev pushes the same thing to stage, breaking that

Maximum Leader
Dec 5, 2014
revert the commit and tell them to recommit when they've fixed it

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



revoke their staging privs

gonadic io
Feb 16, 2011

>>=
it's being reverted now but only because it also broke things for a third party - had it been only me complaining i doubt they'd have bothered.

their excuse? "well we're working together with a different team on this and we didn't want to delay their stuff"

CPColin
Sep 9, 2003

Big ol' smile.
I used to get lots of dark humor out of the cycle of:

* Somebody's in-development code adds a value to the (shared) Dev database that nobody else's code knows how to interpret.
* Everybody else's servers start throwing exceptions about the unknown value.
* I go into company chat and ask if anybody knows where the new value came from.
* Nobody answers, so I find the one server that isn't blowing up.
* I go into that team's chat and ask again if anybody knows what's up.
* Nobody answers, so I delete the value and turn off their server.

FlapYoJacks
Feb 12, 2009
LMBO, the only way you can get into staging with us is if all of the tests pass in Jenkins, including a RPM build, a run through valgrind, a pep8 linter (for the python areas), clang-tidy, and a spin up of a mock environment that installs and runs the rpm that was just created.

If anybody was caught pushing directly to staging, let alone master, that would have serious career consequences.

Finster Dexter
Oct 20, 2014

Beyond is Finster's mad vision of Earth transformed.

ratbert90 posted:

If anybody was caught pushing directly to staging, let alone master, that would have serious career consequences.

Yeah, it's been this way at almost every single job I've ever had, even my current gig which is a startup with 6 total employees, 3 devs (including CTO). The only time this wasn't the case was a billion years ago where I worked doing php web dev and when I first started that job we would just edit directly on prod lmao

gonadic io
Feb 16, 2011

>>=

ratbert90 posted:

LMBO, the only way you can get into staging with us is if all of the tests pass in Jenkins, including a RPM build, a run through valgrind, a pep8 linter (for the python areas), clang-tidy, and a spin up of a mock environment that installs and runs the rpm that was just created.

If anybody was caught pushing directly to staging, let alone master, that would have serious career consequences.

this requires a level of integration tests that we simply don't have yet. Ironically, those were what i was trying to work on when the api went down in dev, so I switched to testing against stage (until this afternoon)

FlapYoJacks
Feb 12, 2009

gonadic io posted:

this requires a level of integration tests that we simply don't have yet. Ironically, those were what i was trying to work on when the api went down in dev, so I switched to testing against stage (until this afternoon)

I set up all the Continuous integration stuff a few weeks ago. Before that the lead engineer ran everything manually. He's quite a bit happier now.

gonadic io
Feb 16, 2011

>>=

ratbert90 posted:

I set up all the Continuous integration stuff a few weeks ago. Before that the lead engineer ran everything manually. He's quite a bit happier now.

integrating tests != continuous integration

FlapYoJacks
Feb 12, 2009

gonadic io posted:

integrating tests != continuous integration

oh, oh god. You don't even have unit tests? :gonk:

jony neuemonic
Nov 13, 2009

ratbert90 posted:

oh, oh god. You don't even have unit tests? :gonk:

welcome to industry :toot:

gonadic io
Feb 16, 2011

>>=

ratbert90 posted:

oh, oh god. You don't even have unit tests? :gonk:

unit tests, yes we have a lot of. they test that a service does what it says it does.

integration test where you test multiple services together? End to end tests where you get the entire environment together? Neither of those (yet, like I said it's my current project)

e: it helps that this is under construction and has 0 external users and prod env literally doesn't exist

FlapYoJacks
Feb 12, 2009

jony neuemonic posted:

welcome to industry :toot:

I quit my last job because (among other things) of poo poo like this.

Powerful Two-Hander
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


we have zero tests. Literally zero. Also no qa resources.

Our test approach could accurately be summarised as "yolo"

also no automation of anything full stop but I'm making some progress getting that done. Current deploy approach is "publish direct from visual studio to the server and even getting people to do that instead of dragging and dropping local files was a struggle.

jony neuemonic
Nov 13, 2009

ratbert90 posted:

I quit my last job because (among other things) of poo poo like this.

yeah it’s a drat good reason.

FlapYoJacks
Feb 12, 2009

jony neuemonic posted:

yeah it’s a drat good reason.

Reminder: My last boss said "If unit tests can't catch 100% of the bugs, they are useless."

He almost fired me when I responded "Then don't wear your seatbelt because they don't stop 100% of deaths in car accidents."

Notorious b.s.d.
Jan 25, 2003

by Reene

MononcQc posted:

queues as a concept are fine.

queues as an architectural construct tend to mean that load and overload management are done nowhere and this is the giant band aid on your faulty system design. It is a permanent traffic cone around the sinkhole in the middle of your living room.

queues as data structures: fine

message queues: dangerous

FlapYoJacks
Feb 12, 2009

Notorious b.s.d. posted:

queues as data structures: fine

message queues: dangerous

Dbus: The best

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
friends my HKT impl in rust is getting really cool.

code:
    // this is silly and it's easier to just call a.product(b) directly, but the entire point of this is to be able talk about these behaviors generically.  
    fn show_off_kind_tupler<K, A, B>(a: Kind<K, A>, b: Kind<K, B>) -> Kind<K, (A, B)>
    where
        K: Applicative<K>,
    {
        a.product(b)
    }

    #[test]
    fn test_kind_tupler() {
        // type annotations are not necessary here, except in the calls to `point` (because the kind must be specified), they're just for the reader:
        let a: Kind<OptionKind, i32> = 5.point::<OptionKind>();
        let b: Kind<OptionKind, &str> = "rats".point::<OptionKind>();
        let k: Option<(i32, &str)> = show_off_kind_tupler(a, b).reify();
        assert_eq!(k, Some((5, "rats")));

        use data::id::{Id, IdExt};
        use kinds::IdKind;
        let a: Kind<IdKind, i32> = 5.point::<IdKind>();
        let b: Kind<IdKind, &str> = "rats".point::<IdKind>();
        let k: (i32, &str) = show_off_kind_tupler(a, b).reify().take();
        assert_eq!(k, (5, "rats"))
    }
and the definition of applicative:
code:
pub trait Applicative<K: HKT>: Functor<K> {
    fn ap<A, B, F>(fa: Kind<K, A>, ff: Kind<K, F>) -> Kind<K, B>
    where
        F: FnOnce(A) -> B;

    fn point<T>(value: T) -> Kind<K, T>;

    fn product<A, B>(fa: Kind<K, A>, fb: Kind<K, B>) -> Kind<K, (A, B)> {
        let f1 = |a| |b| (a, b);
        let t = Self::map(fa, f1);
        Self::ap(fb, t)
    }
}
very satisfied with this result, except for the whole "no user defined kinds" thing.

I was trying to implement `Applicative` for Vec (which i'm just pretending is a list for now) and kept getting stuck. Applicative is for kinds that you can "apply" to types, that is to say: I can take a 5 and turn it into an Option(5) because Option is applicative. I think of this as going from T => Option<T>.

So I'm implementing Applicative for Vec and it just isn't making any sense and I finally realize that, clearly, only a singleton list can be applicative: there's no way to go from T => Vec<T>. It doesn't make sense, conceptually, because how can a single T and turn it into a list of Ts!


DONT THREAD ON ME fucked around with this message at 22:50 on Jun 29, 2018

HoboMan
Nov 4, 2010

Chalks posted:

I guess it depends how many external libraries you have to deal with, but I tend to wrap any untyped interfaces that I need to use without much trouble. I find that most big packages have @types and we only use around 10-15 libs in the whole project so we've had to do this with 2 or 3 of them.

the libraries i want to use do have @types, but the types are defined so that i get type errors on the example code for the library

Lutha Mahtin
Oct 10, 2010

Your brokebrain sin is absolved...go and shitpost no more!

Sniep posted:

i wonder if microsoft's employee vision insurance plan is called "C#"

MrMoo
Sep 14, 2000

In reward for working with Samsung TVs I have a brand new 2018 Samsung TV. The software is 11 years old and actually supports DivX, and not the :) 3.11 flavour.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

well the fun part is going to be figuring out how to draw a TV-style display, but with bitcoin with Macintosh

the jaguar assembles its display one display field at a time, with the object processor handling a display list that can contain opcodes for any X or Y clock on the screen

there's no frame buffer, just two 360x32-bit line buffers (one for even fields and one for odd fields) that contain 16 or 24bpp pixels

the pixel clock can be set to one of 8 values derived from the master clock, providing 8 possible horizontal resolutions. oh and all the video timings are software-configurable, giving you a maximum, though not feasible, resolution of about 1400x576.

Xarn
Jun 26, 2015

ratbert90 posted:

I quit my last job because (among other things) of poo poo like this.

You did good.

gonadic io
Feb 16, 2011

>>=

MALE SHOEGAZE posted:



So I'm implementing Applicative for Vec and it just isn't making any sense and I finally realize that, clearly, only a singleton list can be applicative: there's no way to go from T => Vec<T>. It doesn't make sense, conceptually, because how can a single T and turn it into a list of Ts!

There's two possible applicative instances for lists: cartesian product where point does make a singleton list but product(l1, l2) returns a list with len(l1) *len(l2) elements,

or zipping, where apply makes a list of infinite length and product(l1, l2) gives a list of length min(len(l1), len(l2)). Neither force your lists to be singleton, but the latter isn't applicable to strictly evaluated lists like Vec

E: the trick is that even though you're busy defining applicative.point which makes a list, you can still make lists the old way too

Powerful Two-Hander
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


MrMoo posted:

In reward for working with Samsung TVs I have a brand new 2018 Samsung TV. The software is 11 years old and actually supports DivX, and not the :) 3.11 flavour.

I have a 2017 Samsung and its recent started showing adverts and putting them on the menu bar which is extremely Not Cool and I can't figure out how to disable.


also their "magic remote" records what you say and sends it to them if you don't reject the privacy policy in setup.

picture is really good though

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder

gonadic io posted:

There's two possible applicative instances for lists: cartesian product where point does make a singleton list but product(l1, l2) returns a list with len(l1) *len(l2) elements,

or zipping, where apply makes a list of infinite length and product(l1, l2) gives a list of length min(len(l1), len(l2)). Neither force your lists to be singleton, but the latter isn't applicable to strictly evaluated lists like Vec

E: the trick is that even though you're busy defining applicative.point which makes a list, you can still make lists the old way too

gotcha. that makes sense. product is what was giving me a problem because as you mentioned, how do you represent the product of differently sized lists?

MrMoo
Sep 14, 2000

Powerful Two-Hander posted:

I have a 2017 Samsung and its recent started showing adverts and putting them on the menu bar which is extremely Not Cool and I can't figure out how to disable.


also their "magic remote" records what you say and sends it to them if you don't reject the privacy policy in setup.

picture is really good though

Mine is a non-consumer model so boringly basic remote, however I do know how to make those adverts but this TV doesn't support that either. It's kind of interesting as they're pretty much service workers but many years ahead of PWAs, Samsung also pretty much had NodeJS before it was a thing too.


37" of wideness..

mystes
May 31, 2006

MrMoo posted:

Mine is a non-consumer model so boringly basic remote, however I do know how to make those adverts but this TV doesn't support that either. It's kind of interesting as they're pretty much service workers but many years ahead of PWAs, Samsung also pretty much had NodeJS before it was a thing too.


37" of wideness..
Is the little thing on the right that says Samsung an actual physical part of the TV? It looks almost like it's a ridiculous giant tablet with a loop for holding a stylus.

Progressive JPEG
Feb 19, 2003

for my dremel to cut off!!

MrMoo
Sep 14, 2000

mystes posted:

Is the little thing on the right that says Samsung an actual physical part of the TV? It looks almost like it's a ridiculous giant tablet with a loop for holding a stylus.

It’s a piece of fabric attached to the side of the monitor, I’m guessing as the bezels are not big enough to plaster their logo over. Pretty much like a Roku, I presume it can be removed or hidden in order to build a video wall.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

MrMoo posted:

It’s a piece of fabric attached to the side of the monitor, I’m guessing as the bezels are not big enough to plaster their logo over. Pretty much like a Roku, I presume it can be removed or hidden in order to build a video wall.

the TV then melts down like the something awful forums when you try to change the copyright date

redleader
Aug 18, 2005

Engage according to operational parameters
lol if you connect your tv to the internet

Sniep
Mar 28, 2004

All I needed was that fatty blunt...



King of Breakfast

redleader posted:

lol if you connect your tv to the internet

not even once

that initial payload of ads - nope

Adbot
ADBOT LOVES YOU

The Leck
Feb 27, 2001

ratbert90 posted:

Reminder: My last boss said "If unit tests can't catch 100% of the bugs, they are useless."
i got a combination of this, “taking the time to write tests slows down development too much” and “tests are useless because you have to change them every time your behavior changes”. that boss got a few promotions and moved on to another company where i hope they have leadership who will push back on his idiocy

  • Locked thread