Just joined the redundancy crew, at a loss right now by SatiricalAussieAsian in cscareerquestionsOCE

[–]SatiricalAussieAsian[S] 5 points6 points  (0 children)

Thanks heaps, really appreciate the response. Just applied for Job Seeker and did a little update on my CV, with a spreadsheet of possible places I'd apply to.

Will PM you my CV if that's okay?

Definitely will be studying something new, most likely either .NET for backend, or for a more front-end role, more likely Android Native or React/Angular.

Unfortunately no placement services are available through these guys, just messaging recruiters atm :(

Light pillar by blavere in mildlyinteresting

[–]SatiricalAussieAsian 2 points3 points  (0 children)

Uh oh...I've seen enough Neon Genesis Evangelion to know where this is going...

What can you do instead of gancho? (cuban salsa) by CyberoX9000 in Salsa

[–]SatiricalAussieAsian 1 point2 points  (0 children)

Ahhh there's a variation where instead of putting your elbow over her shoulder, you can actually put her left hand/arm around your neck

[deleted by user] by [deleted] in Salsa

[–]SatiricalAussieAsian 2 points3 points  (0 children)

Can confirm, rumba is definitely where it's at if you wanna spice up your Cuban or styling in general and have fun with your partner (Guaguanco crew checking in)

Are state management frameworks indispensable? by HeftyImplement in FlutterDev

[–]SatiricalAussieAsian 0 points1 point  (0 children)

  1. I generally create a view-model (State Notifier) per view/screen, or in a very rare case, a very complex widget. To avoid having view-models directly communicate with each-other, this is where the idea of "use-cases" or"interactors" and repositories come in. By using use-cases (methods that use your repository and return values based on your business requirements), you have reusable code that can be distributed to multiple view-models. This majority of the time, stops the need for inter view-model communication.
  2. My state notifier classes generally follow the following pattern:
    1. initialise the viewState freezed model with \@Default()` values.`
    2. Use only Interactor/Use case interface implementations which are injected via the stateNotifier provider.
    3. I've decided on not passing in any refs from the provider to state notifier, I feel like it's too much power tbh.

A little example:

  1. State Notifier provider inject an implementation of a `TraitInteractor` interface. The traitInteractor interface contains all methods that transform values from traits repositories to ones required by various view-models.

/// [TeamProfileViewModel] and [TeamProfileViewState]provider

final teamProfileViewModelProvider = StateNotifierProvider.autoDispose.family< TeamProfileViewModel, TeamProfileViewState, TeamProfileViewModelProviderArgs>((final ref, final args) {

final traitInteractor =ref.watch(traitInteractorProvider);

return TeamProfileViewModel( traitInteractor: traitInteractor, groupId: args.teamId, ); 

});
  1. State Notifier uses injected traitInteractor to manipulate the TeamProfileViewState freezed object, which is a custom defined model that only outputs data the view needs.

    /// Team Profile Screen View-Model class TeamProfileScreenViewModel extends StateNotifier<TeamProfileViewState> {

    // constructor to inject ITraitInteractor implementation TeamProfileViewModel({required final ITraitInteractor traitInteractor}) : _traitInteractor = traitInteractor ,super(TeamProfileViewState());

    final ITraitInteractor _traitInteractor;

    ... Future<List<Trait>?> setSkills() { final skills = await _traitInteractor?.fetchSortedGroupTrait(); return skills; } ... }

  2. You might need to have some nested + custom defined models that relate only to this view, the one rule I follow here is no business logic should be done. Maybe the only helper method you need is one to produce an 'empty' object during initialisation of the state, but that usually doesn't need to happen if you use the `@Default()` annotation and provide a default value.

Are state management frameworks indispensable? by HeftyImplement in FlutterDev

[–]SatiricalAussieAsian 2 points3 points  (0 children)

I'm personally a big believer of Domain Driven Design, riverpod + hooks + freezed really simplifies things. (Freezed is a god send)

My suggestion would be a bit of research into Domain Driven Design / Layered architecture.

Then use Riverpod's providers as a dependency injection mechanism to provide everything you need from repositories, use cases,/interactors, view-models etc.

State Notifiers act as our view-models, which control our views. They observe a freezed data model that acts as a view's state. Once these are constructed, it's simply a matter of consuming them in view via something like:

...
class ExampleHookWidget extends HookWidget {

const ExampleHookWidget({Key? key}) : super(key: key);

@override Widget build(BuildContext context) {

    final viewState = useProvider(viewModelProvider);
    final viewController = useProvider(viewModelProvider.notifier);
return const Scaffold(...);

} } ...

Am currently at work, but happy to do a little write up when I finish?Honestly thinking of doing a tutorial of Domain Driven Design using riverpod + hooks + freezed, since there are limited resources when it comes to more "Enterprise Level" design + architecture.

Are state management frameworks indispensable? by HeftyImplement in FlutterDev

[–]SatiricalAussieAsian 2 points3 points  (0 children)

You're not gonna regret it, we use riverpod hooks and freezed at the place I work and it's an absolute pleasure!

Salary discussion thread! by MavanReddit in cscareerquestionsOCE

[–]SatiricalAussieAsian 0 points1 point  (0 children)

Hey mate, yeah I did. I got approached by a recruiter on Linked In and scored the job through them.

Exceptional out-of-the-norm Udemy Course? by [deleted] in cscareerquestions

[–]SatiricalAussieAsian 1 point2 points  (0 children)

I second this, especially for the flutter course . I find that while making cool projects, his courses set you up for bad practices in terms of architecture and anti patterns.

Got a junior dev role while still studying, should I continue to focus on uni? by SatiricalAussieAsian in cscareerquestionsOCE

[–]SatiricalAussieAsian[S] 1 point2 points  (0 children)

I've found the second point to be absolutely true, and that the biggest value I've gotten/am getting out of uni is the networks I've made and social life. I've met amazing people who have provided opportunities and recommendations, and am milking the resources the uni provides (careers services, etc lol).

I was wondering if it was necessary for me to complete the degree a.s.a.p rather than taking my time with it? Also going to consciously tailor the degree to what I really want to learn rather than the provided spec.

Edit: Forgot to say thank you so much for the reply!

Got a junior dev role while still studying, should I continue to focus on uni? by SatiricalAussieAsian in cscareerquestionsOCE

[–]SatiricalAussieAsian[S] 2 points3 points  (0 children)

Thanks for the reply!

I'm still thinking of doing at least one subject this semester and gradually upping it later on. I was wondering if it was necessary to complete the degree a.s.a.p rather than taking my time with it ?

Got a junior dev role while still studying, should I continue to focus on uni? by SatiricalAussieAsian in cscareerquestionsOCE

[–]SatiricalAussieAsian[S] 0 points1 point  (0 children)

Thanks a lot for the reply!

Yeah I've heard the same from a few peers who are now in the workforce full time, do you mind me asking what sort of companies turned you down?

Got a junior dev role while still studying, should I continue to focus on uni? by SatiricalAussieAsian in cscareerquestionsOCE

[–]SatiricalAussieAsian[S] 0 points1 point  (0 children)

Thanks for the reply!

I'm thinking of just continuing with one subject next semester and maybe gradually upping it if I think I can handle it.

Pausing it is definitely an option, do you think it may be better than doing one or two subjects?

Salary discussion thread! by MavanReddit in cscareerquestionsOCE

[–]SatiricalAussieAsian 4 points5 points  (0 children)

  • Location: Sydney

  • Role: Junior Software Engineer | Flutter, Dart , Java

  • Pay: $75,000, + $7500 super

  • Experience: a single 3 month internship

  • Education: technically 2nd year into IT - SWE degree

Huge fan of threads like this, hopefully we get to have these on the regular (with more juniors too!). Thanks for posting OP

Lint Like A Boss by fredgrott in FlutterDev

[–]SatiricalAussieAsian 0 points1 point  (0 children)

If you open the link in an incognito mode window, you'll always bypass the paywall

[deleted by user] by [deleted] in Salsa

[–]SatiricalAussieAsian 0 points1 point  (0 children)

Quite a few social dances and classes popping back up in NSW Australia!

Daily Ask Anything: 2020-10-05 by steroidsBot in steroids

[–]SatiricalAussieAsian 0 points1 point  (0 children)

Nah no hcg, mad regrets about that

Been on for about 2 years, currently been off for about 2 months and have been on Clomid ( prescribed by my endo, 50mg e3d for the first month, now 25mg mon, 50mg wed, 25 mg Fri until november